Python 无法根据列表替换我的json对象中的字段值
我有以下清单Python 无法根据列表替换我的json对象中的字段值,python,python-3.x,Python,Python 3.x,我有以下清单 categories=[{'Housing': 1}, {'Movies': 2}, {'Banking': 3}, {'Restaurant': 4}, {'Travel': 5}] 我想用上面类别列表中的值替换下面数据集的名称字段 categories_src=[ {'id':0,'name':'Banking'}, {'id':1,'name':'Home'}, {'id':2,'name':'Travel'}, {'id':3,'name':'Movies'} ] 我尝
categories=[{'Housing': 1}, {'Movies': 2}, {'Banking': 3}, {'Restaurant': 4}, {'Travel': 5}]
我想用上面类别列表中的值替换下面数据集的名称字段
categories_src=[
{'id':0,'name':'Banking'},
{'id':1,'name':'Home'},
{'id':2,'name':'Travel'},
{'id':3,'name':'Movies'}
]
我尝试了下面的,但它不适用于字符串。。
我可以将其用于整数字段
categories ={2:1,3:4,4:8,5:12,6:16,7:20,8:40,9:80,10:100}
for cat in categories_src:
cat['id']=categories[cat['id']]
我不能将其用于字符串,如何根据需要获取源数据集中的名称字段以类别值替换
若我能把下面的列表转换成字典,我想它应该能用。我试过了,但没有成功
如何将上面的列表转换为下面的字典
categories={'Housing': 1, 'Movies': 2, 'Banking': 3, 'Restaurant': 4, 'Travel': 5}
使用听写理解:
>>> {key:x[key] for x in categories for key in x}
# {'Travel': 5, 'Restaurant': 4, 'Movies': 2, 'Banking': 3, 'Housing': 1}
>>> {key:x[key] for x in categories for key in x}
# {'Travel': 5, 'Restaurant': 4, 'Movies': 2, 'Banking': 3, 'Housing': 1}