Странность переменной Python?

Что происходит с моей переменной Python? old_pos , похоже, связан с pos :

Код:

pos = [7, 7]
direction = [1, 1]
old_pos = pos
print 'pos     = '+str(pos)
print 'old_pos = '+str(old_pos)
pos[0] += direction[0]
pos[1] += direction[1]
print 'pos     = '+str(pos)
print 'old_pos = '+str(old_pos)

Вывод:

pos     = [7, 7]
old_pos = [7, 7]
pos     = [8, 8]
old_pos = [8, 8]

Однако, если я заменю old_pos = pos на ] old_pos = tuple (pos) или даже old_pos = list (pos) , у меня нет этой проблемы:

pos     = [7, 7]
old_pos = [7, 7]
pos     = [8, 8]
old_pos = [7, 7]
6
задан Zaz 14 September 2010 в 20:42
поделиться