如何将相同的字典添加到具有修改后的值的列表中

时间:2018-11-27 17:12:23

标签: python

csv={“a”:0}
list_=[]
for i in range(2):
    csv["a"]+=1
    list_.append(csv)
    print(list_,csv)

我得到这样的输出: [{'a':2},{'a':2}]

我需要得到这样的输出 [{'a':1},{'a':2}]

2 个答案:

答案 0 :(得分:3)

由于python将变量传递给函数作为引用而不是值,您需要将原始字典的副本传递给list_.append()

csv={"a":0}
list_=[]
for i in range(2):
    csv["a"]+=1
    list_.append(dict(csv))
print(list_)

答案 1 :(得分:2)

您可以进行列表理解:

String messageContent = sayHi();
String hi = messageContent != null ? messageContent : "-";