首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python中字典的enumerate()

python中字典的enumerate()
EN

Stack Overflow用户
提问于 2016-03-27 14:03:23
回答 11查看 210.1K关注 0票数 112

我知道我们使用enumerate来迭代列表,但我在字典中尝试了一下,它没有给出错误。

代码:

代码语言:javascript
复制
enumm = {0: 1, 1: 2, 2: 3, 4: 4, 5: 5, 6: 6, 7: 7}

for i, j in enumerate(enumm):
    print(i, j)

输出:

代码语言:javascript
复制
0 0

1 1

2 2

3 4

4 5

5 6

6 7

有人能解释一下输出吗?

EN

回答 11

Stack Overflow用户

发布于 2018-12-20 16:48:40

在已经提供的答案之上,Python中有一个非常好的模式,它允许您枚举字典的键和值。

通常情况下,您可以枚举字典的键

代码语言:javascript
复制
example_dict = {1:'a', 2:'b', 3:'c', 4:'d'}

for i, k in enumerate(example_dict):
    print(i, k)

以下哪项输出:

代码语言:javascript
复制
0 1
1 2
2 3
3 4

但是,如果您希望同时通过键和值进行枚举,则可以使用以下方法:

代码语言:javascript
复制
for i, (k, v) in enumerate(example_dict.items()):
    print(i, k, v)

以下哪项输出:

代码语言:javascript
复制
0 1 a
1 2 b
2 3 c
3 4 d
票数 166
EN

Stack Overflow用户

发布于 2016-03-27 14:31:59

输出的第一列是enumm中每一项的索引,第二列是它的键。如果你想迭代你的字典,那么使用.items():

代码语言:javascript
复制
for k, v in enumm.items():
    print(k, v)

输出应如下所示:

代码语言:javascript
复制
0 1
1 2
2 3
4 4 
5 5
6 6
7 7
票数 70
EN

Stack Overflow用户

发布于 2019-04-14 23:24:08

我想补充一下,如果你想枚举字典的索引、键和值,你的for循环应该是这样的:

代码语言:javascript
复制
for index, (key, value) in enumerate(your_dict.items()):
    print(index, key, value)
票数 47
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36244380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档