更新字典中的值并使用枚举函数和打印函数为以下代码提供不同的功能

Updating values in dictionary and using enumerate function and print function giving different functions for the below code

x = {'s': 1, 'd': 2, 'f': 4}
x['s'] = 6
print(x)
for q, w in enumerate(x):
    print(q, w)

上面的代码在直接打印和使用枚举并打印时给出了不同的输出。

{'s': 6, 'd': 2, 'f': 4}

0 s   
1 d   
2 f 

你必须用dict.items遍历它,enumerate只给出索引。

所以试试这个:

for q, w in x.items():
    print(q, w)

正如 U12-Forward 所说,您正在打印索引而不是值。您还可以打印下面代码中的值。但正如他所说,如果你想遍历键和值,你应该使用 items()

x = {'s': 1, 'd': 2, 'f': 4}
x['s'] = 6
print(x)
for q, w in enumerate(x):
    print(q, w, x[w])
>>
0 s 6   
1 d 2  
2 f 4