python中字典的键怎么返回,如何在Python中将字典键作为列表返回?

In Python 2.7, I could get dictionary keys, values, or items as a list:

>>> newdict = {1:0, 2:0, 3:0}

>>> newdict.keys()

[1, 2, 3]

Now, in Python >= 3.3, I get something like this:

>>> newdict.keys()

dict_keys([1, 2, 3])

So, I have to do this to get a list:

newlist = list()

for i in newdict.keys():

newlist.append(i)

I'm wondering, is there a better way to return a list in Python 3?

解决方案

Try list(newdict.keys()).

This will convert the dict_keys object to a list.

On the other hand, you should ask yourself whether or not it matters. The Pythonic way to code is to assume duck typing (if it looks like a duck and it quacks like a duck, it's a duck). The dict_keys object will act like a list for most purposes. For instance:

for key in newdict.keys():

print(key)

Obviously, insertion operators may not work, but that doesn't make much sense for a list of dictionary keys anyway.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值