需要帮助理解这个python代码片段

时间:2017-01-08 17:36:09

标签: python

我在在线python测试中遇到了以下内容:

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

当我将它插入解释器(python 2.7)时,我得到:

0
1
2
2

我不能为我的生活弄明白为什么这样做会像它一样。有人可以解释一下吗?

1 个答案:

答案 0 :(得分:2)

它将a的元素放到[3]并打印出来。当涉及第四个元素时,它将[3]置于其自身,但由于前一次迭代,它具有[3] = 2。在某种意义上它类似于:

for x in a:
    a[3] = x
    print a[3]