我想声明一个n字典的列表。 然而,在迭代期间,列表中的所有字典似乎都指向同一个字典。适用于列表中所有词典的最后一次迭代的数据。 如何避免这个问题? 谢谢
lst=[]
template={"field1":"","field2":"","field3":""}
j={}
dict_id=1
for i in range(10):
j[dict_id]=template
j[dict_id]["field1"]=i
j[dict_id]["field2"] = i
j[dict_id]["field3"] = i
dict_id+=1
lst.append(j)
print(j)
>>>
{1: {'field1': 9, 'field2': 9, 'field3': 9},
2: {'field1': 9, 'field2': 9, 'field3': 9},
3: {'field1': 9, 'field2': 9, 'field3': 9},
4: {'field1': 9, 'field2': 9, 'field3': 9},
5: {'field1': 9, 'field2': 9, 'field3': 9},
6: {'field1': 9, 'field2': 9, 'field3': 9},
7: {'field1': 9, 'field2': 9, 'field3': 9},
8: {'field1': 9, 'field2': 9, 'field3': 9},
9: {'field1': 9, 'field2': 9, 'field3': 9},
10: {'field1': 9, 'field2': 9, 'field3': 9}}