在Python 3.x中,我了解默认情况下,如果我们迭代字典,则每次迭代都会为循环变量分配键的值。 因此:
for loopvar_1 in {'a':1,'b':2,'c':3}:
print(loopvar_1)
结果
a
b
c
将键分配给循环变量而不是与该键关联的实际值(在这种情况下为数字1、2和3)有什么好处
因此,根据我在上面的询问,是否每次都确实需要引用键?如何在不使用任何函数或方法的情况下迭代值?
答案 0 :(得分:2)
这在PEP-234中进行了讨论,其中定义了dictionary iterators(强调我的行为)的行为:
关于是否
for x in dict: ...
应为 x 分配连续的键,值或项目 字典。
if x in y
与x in y
之间的对称性表明 应该在密钥上进行迭代。 许多独立地使用,甚至被用来“解释” 其他。这是因为对于序列,if x in y
遍历 y 将迭代值与 x 进行比较。如果我们同时采用以上两种 建议,这也适用于字典。
答案 1 :(得分:0)
带出所有关联值的一种方法是使用默认方法来引用关联值,并在for循环内进行操作,以便每次更改用于调用关联值的键。
mnm={'a':1,'b':2,'c':3}
for z in mnm:
print(mnm[z])
PS:这是我在问问题时还要知道的,不幸的是,有关“不使用方法或函数”的部分被删除为无关紧要。