Python自引用for循环

a = [0, 1, 2, 3]
for a[-1] in a:
    print(a[-1])

输出是 0 1 2 2

为什么a[-1]每次迭代都会改变?

回答

您的代码相当于:

a[-1] = a[0]
print(a[-1])

a[-1] = a[1]
print(a[-1])

a[-1] = a[2]
print(a[-1])

a[-1] = a[3]
print(a[-1])

每次通过循环,它都会将当前列表元素的值分配给a[-1]然后打印它。


以上是Python自引用for循环的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>