假设我有一个列表'A',我想使用 A [-1]
遍历此列表A = [1,2,3,40,50]
for A[-1] in A:
print(A[-1])
输出:
1
2
3
40
40
任何人都可以帮助我了解幕后发生的事情吗? 我对交互如何工作有一些了解,但这个让我感到困惑。
答案 0 :(得分:3)
stepLength
语句在每次迭代中将for item in list
中的每个元素分配给list
。当您键入item
而不是A[-1]
时,它会将元素分配给item
,并A[-1]
列出更改。
为了更好地理解,让我们更改您的A
而不影响结果和代码逻辑,并添加额外的for loop
。
print
输出:
A = [1,2,3,40,50]
for x in A:
A[-1] = x
print(A[-1])
print(A)
如您所见,在每次迭代中,A的最后一项都会发生变化。它会覆盖最后一个元素。在最后一次迭代中,最后一项(1
[1, 2, 3, 40, 1]
2
[1, 2, 3, 40, 2]
3
[1, 2, 3, 40, 3]
40
[1, 2, 3, 40, 40]
40
[1, 2, 3, 40, 40]
)之前的那一项成为最后一项。