
Raymond Hettinger wrote:
Choosing between:
list(d) or d.keys()
Which is the one obvious way of turning a dictionary into a list? IMO, list(d) is it.
Except that, "turning a dictionary into a list" as an English phrase is indeterminate--do you want the keys or the values or both? list(d) happens to choose the keys, but that doesn't make it the "one obvious way". If I were being introduced to list() for the first time, I would probably expect/desire it to be lossless, producing something like d.items() instead.
So, one question is whether set() and frozenset() should grow an analogue to the keys() method:
set('banana').elements() ['a', 'b', 'n']
I don't think so, for the reason that .keys() is effectively a disambiguator as I just described. With sets, there is no mapping, and therefore no ambiguity. Robert Brewer MIS Amor Ministries fumanchu@amor.org