试着看看下面的代码。它应该有助于你了解幕后发生的事情:
arr = [1,2,3,9,10,12]
index = 0
for i in arr:
print('First print: ', i, index, arr[index])
arr.remove(i)
print('Second print: ', i, index, arr[index])
index += 1
# ('First print: ', 1, 0, 1)
# ('Second print: ', 1, 0, 2)
# ('First print: ', 3, 1, 3)
# ('Second print: ', 3, 1, 9)
# ('First print: ', 10, 2, 10)
# ('Second print: ', 10, 2, 12)
arr = [1,2,3,9,10,12]
index = 0
for i in list(arr):
print('First print: ', i, index, arr[index])
arr.remove(i)
print('Second print: ', i, index, arr[index])
index += 1
# ('First print: ', 1, 0, 1)
# ('Second print: ', 1, 0, 2)
# ('First print: ', 2, 1, 3)
# ('Second print: ', 2, 1, 9)
# ('First print: ', 3, 2, 10)
# ('Second print: ', 3, 2, 12)
# Traceback (most recent call last):
# File "<stdin>", line 2, in <module>
# IndexError: list index out of range