python: Добавление словаря в список - я вижу указатель, похожий на поведение

Я пробовал следующее в интерпретаторе python:

>>>
>>> a = []
>>> b = {1:'one'}
>>> a.append(b)
>>> a
[{1: 'one'}]
>>> b[1] = 'ONE'
>>> a
[{1: 'ONE'}]
>>>

Здесь, после добавления словаря 'b' в список 'a', я меняю значение, соответствующее ключу 1 в словаре 'а'. Каким-то образом это изменение отражается и в списке. Когда я добавляю словарь в список, разве я не просто добавляю значение словаря? Похоже, что я добавил указатель на словарь к списку, и, следовательно, изменения словаря также отражаются в списке.

Я не хочу, чтобы изменение отражалось в списке. Как мне это сделать?

Спасибо за ваше время!

59
задан neo29 9 March 2011 в 11:02
поделиться