我懂了,确实和@昨非和@qiuyouzhi 讲的一样,这里面for i in list只是进行遍历,应该理解这种循环是一种函数,这里面i只是临时的赋值而已>>> t = list(range(6))
>>> t
[0, 1, 2, 3, 4, 5]
>>> for i in t:
print(id(i))
140718108612224
140718108612256
140718108612288
140718108612320
140718108612352
140718108612384
>>> for i in range(6):
print(id(t[i]))
140718108612224
140718108612256
140718108612288
140718108612320
140718108612352
140718108612384
>>> for i in t:
i = i**2
print('i= %s,id(%s) '%(i,id(i)))
i= 0,id(140718108612224)
i= 1,id(140718108612256)
i= 4,id(140718108612352)
i= 9,id(140718108612512)
i= 16,id(140718108612736)
i= 25,id(140718108613024)
>>> t
[0, 1, 2, 3, 4, 5]
>>> for i in range(6):
t[i] = t[i]**2
print('i= %s,id(%s)=%s '%(i,i,id(i)))
i= 0,id(0)=140718108612224
i= 1,id(1)=140718108612256
i= 2,id(2)=140718108612288
i= 3,id(3)=140718108612320
i= 4,id(4)=140718108612352
i= 5,id(5)=140718108612384
>>> t
[0, 1, 4, 9, 16, 25]
|