我的问题是在将字典更新为列表时。
输入:
>>> res=[]
>>> my_inital_dict={'aa':1,'bb':1}
>>> for i in range(4):
... my_initial_dict.update({'aa':i+4})
... print my_initial_dict
... res.append(my_initial_dict)
我得到的输出:
{'aa': 4, 'bb': 1}
{'aa': 5, 'bb': 1}
{'aa': 6, 'bb': 1}
{'aa': 7, 'bb': 1}
>>> res
[{'aa': 7, 'bb': 1}, {'aa': 7, 'bb': 1}, {'aa': 7, 'bb': 1}, {'aa': 7, 'bb': 1}]
当我在循环中打印时my_initial_dict
,我得到了正确的值。但是当我打印结果列表时,我会得到重复 4 次相同字典的字典列表。有人可以解释这里发生了什么吗?