Open JustAnotherArchivist opened 1 year ago
Hello! First time contributor here. I would like to take this issue.
@Dasanant I think this needs some opinion collecting on what's the best wording first. (That's also why I opened it as an issue, not a PR.)
IMHO, I think would lean towards suggestion 2. It mentions sequence so the reader gets the general idea and if they look at the definition of iterable the other types are mentioned with links back to their entry. Keeps it short and concise while providing the reader a way to get to more information.
See also iterator, sequence, and generator.
The documentation of
enumerate(iterable, start=0)
currently reads:This wording dates back to 2002 (commit 38f71973) with minimal changes ('the values obtained' was originally 'the corresponding value obtained', which was slightly more accurate in my opinion). An earlier issue about this paragraph can be found at #66914, though the specific issue at hand, the description of iterable's type, was not really discussed there.
While the parameter name indicates that
enumerate
accepts any iterable as the first argument, I find it strange that the description explicitly listsinstead of/without actually mentioning 'iterable' and referencing the term's definition in the glossary.
My primary suggestion is to replace (the slightly vague, as it could mean iterable or iterator) 'object which supports iteration' with 'iterable' and a link to the glossary. Additionally, since all iterators are iterables, their mention could also be removed.
Suggestion 1 (with or without a link for 'iterator'):
Suggestion 2:
filter
has a similar situation:'A container which supports iteration' is quite vague and mildly misleading since other parts of the documentation use the term 'container' for lists and similar types. It also uses 'may' instead of 'must'. I would suggest to use the same wording there as for
enumerate
.Linked PRs