gh-145300: Add __length_hint__ for itertools.islice#145333
Closed
KowalskiThomas wants to merge 4 commits intopython:mainfrom
Closed
gh-145300: Add __length_hint__ for itertools.islice#145333KowalskiThomas wants to merge 4 commits intopython:mainfrom
__length_hint__ for itertools.islice#145333KowalskiThomas wants to merge 4 commits intopython:mainfrom
Conversation
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR addresses an issue I spotted on #145300, which mentioned that
itertools.islicedoes not support__length_hint__currently.General philosophy is
stopis not set, we don't know the number of elements we will iterate over, so we use the underlying iterator's__length_hint__then do our calculations over thatTesting wise, I added a few unit tests but it's unclear to me if I should be adding more (there doesn't seem to be a ton of instances/examples for the other
itertoolstests), but feel free to request more. Just to gain confidence in the change myself, I also tried the following locally (it works):Note this is my first PR here; I read the contributor guidelines but I apologise in advance if anything I did not follow them (please do tell me!)
.extend()behavior in bytearray #145300