[Python-Dev] Re: PEP 279
Guido van Rossum
guido@python.org
Mon, 01 Apr 2002 23:05:52 -0500
After some more thinking about the name, I have two contenders left:
enumerate() and indexer().
Let me explain why I reject the others:
> iterindexed()-- five syllables is a mouthfull
Indeed.
> index() -- nice verb but could be confused the .index() method
Indeed.
> indexed() -- widely liked however adjectives should be avoided
Indeed.
> count() -- direct and explicit but often used in other contexts
In particular, there's a list method by this name. While that's in a
different namespace, I think the core language should be careful not
to pile too many meanings on the same name.
> itercount() -- direct, explicit and hated by more than one person
Did they explain why they hated it? "Hate it" alone doesn't get much
credit in my book.
> iteritems() -- already used by dictionaries for key:value pairs
Which is a downside to me. The symmetry between (key:value) for
mappings and (index:value) for sequences seems appealing but quickly
becomes a problem, e.g. "for i in <list>" iterates over the values but
"for i in <dict>" iterates over the keys.
So now I'd like to choose between enumerate() and indexer(). Any
closing arguments?
--Guido van Rossum (home page: http://www.python.org/~guido/)