在Python 2.7中,我可以将字典键,值或项目作为列表获取:
>>> newdict = {1:0, 2:0, 3:0}
>>> newdict.keys()
[1, 2, 3]
Run Code Online (Sandbox Code Playgroud)
现在,在Python> = 3.3中,我得到这样的东西:
>>> newdict.keys()
dict_keys([1, 2, 3])
Run Code Online (Sandbox Code Playgroud)
所以,我必须这样做以获得一个列表:
newlist = list()
for i in newdict.keys():
newlist.append(i)
Run Code Online (Sandbox Code Playgroud)
我想知道,有没有更好的方法来返回Python 3中的列表?
当我使用collections.Counterviewkeys(),viewitems()和viewvalues()方法时,我遇到了这三种类型.
这三个方法返回的值是类型dict_keys,dict_items和dict_values.
正如我所注意到的,它们是可迭代的.
但我的问题是,为什么这三种类型存在?或者他们的用途是什么?