我想知道是否有一个字典命令允许我声明一个键并列表(如果它不在字典中),或者更新它(如果在)。
i = 0
newlines["numbersbytwo"] = []
newlines["numbersbyfive"] = []
while i<n:
newlines["numbersbytwo"].append(i*2)
newlines["numbersbyfive"].append(i*5)
i+=1
这是我目前的代码,但我想知道是否有任何方法可以不必先声明它。
最佳答案
您可以使用defaultdict以空列表作为默认值。例如:
In [1]: from collections import defaultdict
In [2]: newlines = defaultdict(list)
In [3]: newlines["numbersbytwo"].append(1)
In [4]: newlines["numbersbyfive"].append(11)
In [5]: newlines
Out[5]: defaultdict(<function <lambda> at 0x00000000031D5048>, {'numbersbyfive': [11], 'numbersbytwo': [1]})
In [6]: newlines["numbersbytwo"]
Out[6]: [1]
In [7]: newlines["numbersbyfive"]
Out[7]: [11]
In [8]:
关于python - 在一行中声明并附加字典中的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25446104/