假设我有一个字典:
foo = {'a': 1}
Both list(foo)
and foo.keys()
返回同样的东西。两者有什么区别?
Python 3 中存在差异之一。foo.keys()
返回键的迭代器,这就是foo.iterkeys()
在 Python 2 中是这样的,而list(foo)
返回键的列表。
如下所述,foo.keys()
在 Python 3 中并不完全返回一个迭代器。它返回一个dict_keys
对象(或视图),在其操作中,允许迭代。您还可以做一些有趣的事情,例如集合运算和多次迭代。它仍然具有惰性求值的概念,这使得迭代器如此强大。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)