首先看下下面这段代码会输出什么?
lis = [1,2,3,4]
count = 1
for i in lis:
if count < 5:
lis.append(5)
count+=1
print(lis)
print(i)
如果你能很轻易且很自信的说出答案,后面的就不用看了。
!
!
!
!
结果是:
[5, 1, 2, 3, 4]
1
[5, 5, 1, 2, 3, 4]
1
[5, 5, 5, 1, 2, 3, 4]
1
[5, 5, 5, 5, 1, 2, 3, 4]
1
这里说明lis一直在改变,同时i之所以一直是1是因为lis改变使得i所对应的位置始终是1,如果将插入语句改为lis.append(5)即可看见不同输出如下:
[1, 2, 3, 4, 5]
1
[1, 2, 3, 4, 5, 5]
2
[1, 2, 3, 4, 5, 5, 5]
3
[1, 2, 3, 4, 5, 5, 5, 5]
4