我有一个字典条目列表,我首先初始化,然后只想更改9个列表条目中的2个。但在更改其中一个条目后,列表中的所有条目都已更改。
In [1]: cell_init = {'state':False, 'age':0}
In [2]: cell_list = []
In [3]: n = 3
In [4]: for index in range(n * n):
...: cell_list.append(cell_init)
...:
In [6]: cell_list
Out[6]:
[{'age': 0, 'state': False},
{'age': 0, 'state': False},
{'age': 0, 'state': False},
{'age': 0, 'state': False},
{'age': 0, 'state': False},
{'age': 0, 'state': False},
{'age': 0, 'state': False},
{'age': 0, 'state': False},
{'age': 0, 'state': False}]
In [8]: cell_entry = cell_list[2]
In [9]: cell_entry
Out[9]: {'age': 0, 'state': False}
In [10]: cell_entry['state'] = True
In [11]: cell_list
Out[11]:
[{'age': 0, 'state': True},
{'age': 0, 'state': True},
{'age': 0, 'state': True},
{'age': 0, 'state': True},
{'age': 0, 'state': True},
{'age': 0, 'state': True},
{'age': 0, 'state': True},
{'age': 0, 'state': True},
{'age': 0, 'state': True}]
为什么所有这些条目都会改变?