如何将包含多个字典的列表转换为指定格式的字典?
如何将包含字典的列表转换为指定格式的字典?
你需要把列表里每个小字典的A1值作为新字典的键,对应的B1值作为值对吧?这在Python里有好几种简单的实现方式,我给你列几个常用的:
方法1:字典推导式(最简洁)
这是Python里处理这类转换最推荐的方式,一行代码就能搞定:
mylist = [{'A1': 'AAA', 'B1': '0.0000300'}, {'A1': 'BBB', 'B1': '0.0164500'}, {'A1': 'CCC', 'B1': '0.00179350'}] neededdict = {item['A1']: item['B1'] for item in mylist} print(neededdict)
运行后就会得到你想要的结果:
{'AAA': '0.0000300', 'BBB': '0.0164500', 'CCC': '0.00179350'}
方法2:普通循环(适合新手理解)
如果觉得推导式有点抽象,用for循环一步步来也很清晰:
mylist = [{'A1': 'AAA', 'B1': '0.0000300'}, {'A1': 'BBB', 'B1': '0.0164500'}, {'A1': 'CCC', 'B1': '0.00179350'}] neededdict = {} for item in mylist: key = item['A1'] value = item['B1'] neededdict[key] = value print(neededdict)
注意事项
要提醒你一下:如果你的列表里有多个字典的A1值重复,比如两个A1: 'AAA',那后面的字典值会覆盖前面的,这是Python字典的特性——键是唯一的。比如如果列表里有{'A1': 'AAA', 'B1': '123'}和{'A1': 'AAA', 'B1': '456'},最终neededdict['AAA']会是'456'。
内容的提问来源于stack exchange,提问作者J87
相关产品推荐
相关产品推荐

