如何將字典值串列附加到另一個串列。這是我的第一個字典:
d=[{'title': 'a', 'num_iid': 36167009077, 'seller_id': 249772349},{'title': 'b', 'num_iid': 1234, 'seller_id': 249772349},{'title': 'c', 'num_iid': 12784, 'seller_id': 12475}]
以及我要附加的串列:
d1=[{'title': 'a', 'image_url': 'a.jpg', 'subtitle': '140.00', 'buttons': [{'type': 'postback', 'title': 'Details', 'payload': '/'}, {'type': 'postback', 'title': 'shop', 'payload': '/'}]}, {'title': 'b', 'image_url': 'b.jpg', 'subtitle': '2193.00', 'buttons': [{'type': 'postback', 'title': 'Details', 'payload': '/'}, {'type': 'postback', 'title': 'shop', 'payload': '/'}]}, {'title': 'c', 'image_url': 'c.jpg', 'subtitle': '3203.00', 'buttons': [{'type': 'postback', 'title': 'Details', 'payload': '/'}, {'type': 'postback', 'title': 'shop', 'payload': '/'}]}]
我需要的是在每個按鈕有效負載中插入“num_iid”和“seller_id”
預期輸出:
result=[{'title': 'a', 'image_url': 'a.jpg', 'subtitle': '140.00', 'buttons': [{'type': 'postback', 'title': 'Details', 'payload': '36167009077'}, {'type': 'postback', 'title': 'shop ', 'payload': '249772349'}]}, {'title': 'b', 'image_url': 'b.jpg', 'subtitle': '2193.00', 'buttons': [{'type': 'postback', 'title': 'Details', 'payload': '1234'}, {'type': 'postback', 'title': 'shop', 'payload': '249772349'}]}, {'title': 'c', 'image_url': 'c.jpg', 'subtitle': '3203.00', 'buttons': [{'type': 'postback', 'title': 'Details', 'payload': '12784'}, {'type': 'postback', 'title': 'shop', 'payload': '12475'}]}]
uj5u.com熱心網友回復:
試試這個:
for d_find in d:
for d1_find in d1:
if d_find['title'] == d1_find['title']:
d1_find['buttons'][0]['payload'] = d_find['num_iid']
d1_find['buttons'][1]['payload'] = d_find['seller_id']
break
print(d1)
uj5u.com熱心網友回復:
您可以使用 for 回圈和enumerate():
for i, j in enumerate(d1):
j['buttons'][0]['payload'] = d[i]['num_iid']
j['buttons'][1]['payload'] = d[i]['seller_id']
uj5u.com熱心網友回復:
第一的:
num_iids = {item['title']: item.get('num_iid', '/') for item in d}
seller_ids = {item['title']: item.get('seller_id', '/') for item in d}
然后:
for item in d1:
title = item['title']
item['buttons'][0]['payload'] = num_iids.get(title, '/')
item['buttons'][1]['payload'] = seller_ids.get(title, '/')
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/469267.html
上一篇:從字典中選擇錯誤的鍵
