[Python-3000] PEP 3106: Revamping dict.keys(), .values() and .items()

Nick Coghlan ncoghlan at gmail.com
Wed Dec 20 12:43:53 CET 2006

Guido van Rossum wrote:
> I've written a quick version of PEP 3106, which expresses my ideas
> about how the dict methods to access keys, values and items should be
> redone.
> The text is in svn:
> http://svn.python.org/view/peps/trunk/pep-3106.txt?rev=53096&view=markup
> At some point it will appear on python.org: http://python.org/dev/peps/pep-3106/
> Comments please? (Or we can skip the comments and go straight to the
> implementation stage. Patch anyone?)
And one thing I left out of my other reply:

The UserDict and UserList modules are going to need to be renamed in order to 
provide PEP compliant homes for ListMixin and DictMixin (as per PEP 3100, the 
other classes in those modules go away completely).

Wherever DictMixin ends up, it is going to need classes defined that it can 
return from keys(), items() and values(). These may either be alternate 
implementations written in Python, or else the actual C versions used by the 
builtin dict type. For names, something simple like DictKeysView, 
DictItemsView and DictValuesView should be fine.


[1] 'containertools'?, 'collectiontools'?, 'collections.utils'? I suspect a 
BDFL name pronouncement will be needed if we pursue this idea :)

Nick Coghlan   |   ncoghlan at gmail.com   |   Brisbane, Australia

More information about the Python-3000 mailing list