Christoph Zwerschke wrote: > Anyway, I was thinking about whether it would be possible and desirable > to change the old behavior in future Python versions and let dict.keys() > and dict.values() both return sets instead of lists.
You answer the question whether it would be possible (no, because of backwards compatibility); you don't attempt to answer the question whether it would be desirable. Why do you think that would be a good idea? If you want the set of keys of a dictionary d, then do set(d): >>> d={1:2,3:4} >>> set(d) set([1, 3]) As Mike Meyer explains, the same is meaningless for .values(): they might not be unique. For .items(), conversion into a set does would appear to be meaningful, but doesn't actually work: if the values contain unhashable objects, the set of tuples cannot be constructed (as set members must be immutable). Regards, Martin -- http://mail.python.org/mailman/listinfo/python-list