Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 7932|回复: 0
打印 上一主题 下一主题

迭代dict的key和value

[复制链接]

335

主题

338

帖子

1690

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1690
跳转到指定楼层
楼主
发表于 2017-7-10 22:47:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我们了解了如何迭代 dictkeyvalue,那么,在一个 for 循环中,能否同时迭代 key和value?答案是肯定的。
首先,我们看看 dict 对象的 items() 方法返回的值:
>>> d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }>>> print d.items()[('Lisa', 85), ('Adam', 95), ('Bart', 59)]
可以看到,items() 方法把dict对象转换成了包含tuple的list,我们对这个list进行迭代,可以同时获得key和value:
>>> for key, value in d.items():...     print key, ':', value... Lisa : 85Adam : 95Bart : 59
和 values() 有一个 itervalues() 类似, items() 也有一个对应的 iteritems(),iteritems() 不把dict转换成list,而是在迭代过程中不断给出 tuple,所以, iteritems() 不占用额外的内存。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|飞克网 ( 皖ICP备16023507号 )

GMT+8, 2024-4-26 14:17 , Processed in 0.208967 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表