0
这是代码:的append()函数的行为出现异常
import random
mylist=[]
position=[300,300]
while 1:
randomint = random.randint(1,3)
print mylist
if randomint == 3:
position[0]+=5
mylist.append(position)
,而是这个:
[]
[[305, 300], [310, 300]]
[[305, 300], [310, 300], [315, 300]]
[[305, 300], [310, 300], [315, 300]]
[[305, 300], [310, 300], [315, 300]]
... 我得到这个:
[]
[[305, 300]]
[[305, 300]]
[[305, 300]]
[[305, 300]]
[[305, 300]]
[[305, 300]]
[[310, 300], [310, 300]]
[[315, 300], [315, 300], [315, 300]]
[[315, 300], [315, 300], [315, 300]]
[[315, 300], [315, 300], [315, 300]]
[[315, 300], [315, 300], [315, 300]]
[[315, 300], [315, 300], [315, 300]]
[[315, 300], [315, 300], [315, 300]]
[[315, 300], [315, 300], [315, 300]]
[[315, 300], [315, 300], [315, 300]]
[[320, 300], [320, 300], [320, 300], [320, 300]]
...
为什么?这很奇怪,不是吗?