我想用dict.fromkeys()
方法生成字典。我有一个list
年,我想分配values
他们list object
。问题是dict.fromkeys()
生成列表的副本。所以,当我更新列表的元素时,它会更新所有副本。Python dict.fromkeys()生成list()的副本而不是新的副本
>>> years=["1","2","3"]
>>> names=["a","b","c"]
>>> blank=[]
>>> names_in_years=dict.fromkeys(years,blank.copy())
>>> names_in_years
{'2': [], '4': [], '3': [], '1': []}
>>> names_in_years["2"].extend(names)
>>> names_in_years
{'2': ['a', 'b', 'c'], '4': ['a', 'b', 'c'], '3': ['a', 'b', 'c'], '1': ['a', 'b', 'c']}
我想更新dictionary
对象,individually.the结果是低于我想:
{'2': ['a', 'b', 'c'], '4': [], '3': [], '1': []}
是否有一行来做到这一点的方法?
使用良好的词典理解。 –