On 2014-04-08 14:34, Peter Otten wrote:
That's a change in Python 3 where dict.keys() no longer creates a list,
but
instead creates a view on the underlying dict data thus saving time and
space. In the rare case where you actually need a list you can
explicitly
create one with
ips = list(ipDic)
That's because the above is a session using Python 2. Compare:
$ python3
Python 3.3.2+ (default, Feb 28 2014, 00:52:16)
[GCC 4.8.1] on linux
Type "help", "copyright", "credits" or "license" for more information.
dict(a=1, b=2).keys()
dict_keys(['b', 'a'])
$ python2
Python 2.7.5+ (default, Feb 27 2014, 19:37:08)
[GCC 4.8.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
dict(a=1, b=2).keys()
['a', 'b']
PS: You can get a view in Python 2, too, with dict.viewkeys()
Thanks, Peter, for this clarification. I want to present the list
sorted so probably this is the rare case of which you spoke where I
would need to use l = list(myDict) rather than the view.
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor