[Python-Dev] Proposal: add odict to collections
Nick Coghlan
ncoghlan at gmail.com
Sun Jun 15 10:14:12 CEST 2008
dbpokorny at gmail.com wrote:
> -1 for ordered dict
> +1 for sorted dict
Build the ordered dict, then sort it in-place afterwards, just like a
list (alternatively, build a normal dict then feed sorted(orig.items())
to the ordered dict constructor).
The point of an ordered dict is that unlike a normal dict, the order the
keys are returned is well defined at the interface level, rather than
arbitrary and implementation-defined.
David Wolever's example of a normal dict() with an associated key list
is an excellent way of thinking about the proposed semantics.
Having a fast ordered dict in the standard library also opens up the
possibility of eventually using such a thing for keyword arguments at
some point in the future. How nice would it be to be able to just write:
t = namedtuple(a=1, b=2, c=3)
instead of:
c = namedtuple("a b c")
t = c(a=1, b=2, c=3)
Cheers,
Nick.
--
Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia
---------------------------------------------------------------
http://www.boredomandlaziness.org
More information about the Python-Dev
mailing list