在python的for循环中使用列表索引的意义是什么?
我试图理解下面的代码在python的for循环中使用列表索引的意义是什么?,python,Python,我试图理解下面的代码 a=[0,1,2,3] for a[-1] in a: print(a[-1]) 我期望无限循环打印3,但输出是相当不可理解的,如下所示 输出: 0 1 2 2 有人能解释一下这个代码的工作原理吗 提前感谢中的关键字for循环不同于其他用例 在这个for循环列表中,返回一个迭代器,并将其分配给实例中的变量列表的最后一个元素 要破坏您的代码,这就是它在后台所做的 for i in a: a[-1] = i print(a[-1]) 参考: 然后在
a=[0,1,2,3]
for a[-1] in a:
print(a[-1])
我期望无限循环打印3,但输出是相当不可理解的,如下所示
输出:
0
1
2
2
有人能解释一下这个代码的工作原理吗
提前感谢
中的关键字for
循环不同于其他用例
在这个for
循环列表中,返回一个迭代器,并将其分配给实例中的变量列表的最后一个元素
要破坏您的代码,这就是它在后台所做的
for i in a:
a[-1] = i
print(a[-1])
参考:
然后在循环中插入a[-1]=i
行,其中i
是迭代中的当前值对于[-1]…
在每次迭代时将迭代值分配给[-1]
。这是一个有趣的心理练习。但是我不明白为什么有人会写这样的代码。在这种情况下,我们应该在最后一次迭代中得到3作为输出,但是我们得到2作为输出output@HarishRudroju因为在倒数第二次迭代中,2
被分配给a[-1]
…