我希望有人可以向我解释一下。
给出以下字典:
users = {'firstname': 'John', 'lastname': 'Smith', 'age': 27}
以下for循环:
for k in users:
print(k, '=>', users[k])
firstname => John
lastname => Smith
age => 27
与以下结果相同:
for k, v in users.items():
print(k, '=>', v)
firstname => John
lastname => Smith
age => 27
我了解第二循环语法及其工作方式,但是第一循环语法让我感到困惑。字典具有键/值对,但看起来最上面的只是循环浏览键,它如何输出值?只是看着它,我希望它能打印出来:
firstname => firstname
lastname => lastname
age => age
但显然不是
答案 0 :(得分:2)
在python中,每当您将键输入字典时,它都会输出映射为值的任何内容。所以:
users = {'firstname': 'John', 'lastname': 'Smith', 'age': 27}
>>>firstname #user input
>>>'John' #python output
希望这会有所帮助!
答案 1 :(得分:1)
在第一个循环中,您实际上是在遍历字典键。
在python中,您可以分配给元组:
>>> (a, b) = (1, 2)
>>> a
1
>>> b
2
因此与执行操作相同:
>>> xs = (1, 2)
>>> a = xs[0]
>>> b = xs[1]
for循环可以重写为:
for kv in users.items():
k, v = kv
# k = kv[0]
# v = kv[1]
print(k, '=>', v)