我有一个字典,其中包含一个键和每个键的多个值
d={'POU': ['KO', '0.9.8', '0.99', '0.54']
'TAN': ['LA', '9', '7.5', '0.0']
'EST': ['RA', '2', '6.5', '10.01']}
和一系列数字:
x = [**1**, **2**, **3**]
如何将列表与字典合并,以便在每行末尾附加每个列表的值:
d={'POU': ['KO', '0.9.8', '0.99', '0.54', **1**]
'TAN': ['LA', '9', '7.5', '0.0', **2**]
'EST': ['RA', '2', '6.5', '10.01', **3**]}
按照相同的顺序。
答案 0 :(得分:3)
正如jpp在他的评论中正确提到的,以下解决方案仅适用于OrderedDicts或从Python 3.7开始,否则正常的dicts不会保留顺序:
for i, v in enumerate(d):
d[v].append(x[i])
d
Out[1]:
{'EST': ['RA', '2', '6.5', '10.01', '**3**'],
'POU': ['KO', '0.9.8', '0.99', '0.54', '**1**'],
'TAN': ['LA', '9', '7.5', '0.0', '**2**']}
答案 1 :(得分:0)
使用简单的迭代。
<强>实施例强>
d={'POU': ['KO', '0.9.8', '0.99', '0.54'],
'TAN': ['LA', '9', '7.5', '0.0'],
'EST': ['RA', '2', '6.5', '10.01']}
x = [1,2, 3]
c = 0
for k,v in d.items():
v.append(x[c])
c+=1
print(d)
<强>输出:强>
{'TAN': ['LA', '9', '7.5', '0.0', 1], 'POU': ['KO', '0.9.8', '0.99', '0.54', 2], 'EST': ['RA', '2', '6.5', '10.01', 3]}