在Python 2.7中,我可以将字典键,值或项作为列表获取:
>>> newdict = {1:0, 2:0, 3:0} >>> newdict.keys() [1, 2, 3]
现在,在Python> = 3.3中,我得到如下信息:
>>> newdict.keys() dict_keys([1, 2, 3])
因此,我必须这样做以获得列表:
newlist = list() for i in newdict.keys(): newlist.append(i)
我想知道,是否有更好的方法在Python 3中返回列表?
尝试list(newdict.keys())。
list(newdict.keys())
这会将dict_keys对象转换为列表。
dict_keys
另一方面,你应该问自己是否重要。Python的编码方式是假设鸭子输入(如果看起来像鸭子,而像鸭子一样嘎嘎叫,那就是鸭子)。在dict_keys大多数情况下,该对象的作用类似于列表。例如:
Python
for key in newdict.keys(): print(key)
显然,插入运算符可能不起作用,但是对于字典关键字列表而言,这并没有多大意义。