我有多个dicts /键值对,如下所示:
d1 = {key1: x1, key2: y1}
d2 = {key1: x2, key2: y2}
Run Code Online (Sandbox Code Playgroud)
我希望结果是一个新的dict(如果可能的话,以最有效的方式):
d = {key1: (x1, x2), key2: (y1, y2)}
Run Code Online (Sandbox Code Playgroud)
实际上,我希望结果d是:
d = {key1: (x1.x1attrib, x2.x2attrib), key2: (y1.y1attrib, y2.y2attrib)}
Run Code Online (Sandbox Code Playgroud)
如果有人告诉我如何获得第一个结果,我可以弄清楚其余部分.
我有以下两个玩具序列
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]
}
Run Code Online (Sandbox Code Playgroud)
我想得到一个独特的字典,我在第一个字典值之后堆叠第二个字典值,在同一个方括号内.
我尝试了以下代码
d_comb = {key:[d1[key], d2[key]] for key in d1}
Run Code Online (Sandbox Code Playgroud)
但是我获得的输出在每个键的列表中有两个列表,即
{'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]]}
Run Code Online (Sandbox Code Playgroud)
而我想获得
{'a': [2, 4, 5, 6, 8, 10, 12, 15],
'b': [1, 2, 5, 6, 9, 12, 14, 16],
'c': [0, …Run Code Online (Sandbox Code Playgroud)