关于列表-字典转换的问题

请问一下各位怎么把da转换成和db对应起来的字典,主要是da,db形式不限,谢谢


da = [(1529, '春'), (1293, '李军'), (1370, '蒋亚'), (138, '亚'),
      (1565, '庚'), (1545, '亚'), (1655, '玉')]
db = [('工单责任人'), ('工单流水号')]

例如

{
‘工单责任人’:['春',······],
‘工单流水号’:[1529,·······]
}

da = [(1529, '春'), (1293, '李军'), (1370, '蒋亚'), (138, '亚'),
      (1565, '庚'), (1545, '亚'), (1655, '玉')]
data=[]
for i in da:
    d={'工单责任人':i[1],'工单流水号':i[0]}
    data.append(d)
print(data)
df=pd.DataFrame(data)

img


da = [(1529, '春'), (1293, '李军'), (1370, '蒋亚'), (138, '亚'),
      (1565, '庚'), (1545, '亚'), (1655, '玉')]
db = [('工单责任人'), ('工单流水号')]
res = {}
for b in db:
    res[b] = []
for a in da:
    res[db[0]].append(a[1])
    res[db[1]].append(a[0])
print(res)

以下答案引用自GPT-3大模型,请合理使用:

# 使用字典推导式
res = { k: [v[1] for v in da] if k == db[0] else [v[0] for v in da] for k in db }

print(res)  # {'工单责任人': ['春', '李军', '蒋亚', '亚', '庚', '亚', '玉'], '工单流水号': [1529, 1293, 1370, 138, 1565, 1545, 1655]}

如果我的回答解决了您的问题,请采纳我的回答