【发布时间】:2019-06-04 04:06:00
【问题描述】:
我有以下两个玩具字典
d1 = {
'a': [2,4,5,6,8,10],
'b': [1,2,5,6,9,12],
'c': [0,4,5,8,10,21]
}
d2 = {
'a': [12,15],
'b': [14,16],
'c': [23,35]
}
我想要一个唯一的字典,我在第一个字典值之后堆叠第二个字典值,在相同的方括号内。
我尝试了以下代码
d_comb = {key:[d1[key], d2[key]] for key in d1}
但我获得的输出在每个键的列表中有两个列表,即
{'a': [[2, 4, 5, 6, 8, 10], [12, 15]],
'b': [[1, 2, 5, 6, 9, 12], [14, 16]],
'c': [[0, 4, 5, 8, 10, 21], [23, 35]]}
而我想获得
{'a': [2, 4, 5, 6, 8, 10, 12, 15],
'b': [1, 2, 5, 6, 9, 12, 14, 16],
'c': [0, 4, 5, 8, 10, 21, 23, 35]}
我怎样才能用一两行代码做到这一点?
【问题讨论】:
-
我们确定
d1和d2具有相同的密钥集吗? -
在这个例子中,根据我目前的需要,是的。当然,我敢肯定,在两个字典中使用不同的键集,代码会有所不同。
标签: python list dictionary