python - 分别组合(合并)列表中的多个字典
问题描述
我有一个名为的列表dlist
,其中包含许多具有相同键的字典(“备注:”)。
dlist = [{'Remark:': 'S : RIH W/14" MAGNET (3TIMES) R I H W/2-1/2 R.CIR BASKET & C'},
{'Remark:': 'ORRING F/64 TO 64.6 P O H NO CONE, LAY DOWN F.TOOL @ RT. R'},
{'Remark:': 'RIH W/14" MAGNET & 8-1/2 DC TO 64 MT & CIR ON TOP OF FISH & 100'}]
我想分别组合字典的值以获得有意义的句子(句子的顺序对我来说很重要)。我使用了以下代码:
Combine_Dict2 = {item['Remark:'] for item in dlist if isinstance(item, dict) and 'Remark:' in item}
我的输出是:
Combine_Dict2 = {'ORRING F/64 TO 64.6 P O H NO CONE, LAY DOWN F.TOOL @ RT. Ra, 'RIH W/14" MAGNET & 8-1/2 DC TO 64 MT & CIR ON TOP OF FISH & 100', 'S : RIH W/14" MAGNET (3TIMES) R I H W/2-1/2 R.CIR BASKET & C'}
没有遵守句子的顺序。请帮我。
解决方案
使用列表推导而不是集合推导来维护顺序:
改变:
Combine_Dict2 = {item['Remark:'] for item in dlist if isinstance(item, dict) and 'Remark:' in item}
至
Combine_Dict2 = [item['Remark:'] for item in dlist if isinstance(item, dict) and 'Remark:' in item]
使用{}
使其成为集合理解,[]
是列表理解
推荐阅读
- python - Python Google 图片下载库错误
- python - 电话号码字段包含美国电话号码,需要修改为国际格式,电话号码前加“+1-”
- angular - highcharts 中的图表选项未从 ngoninit 中的函数调用更新
- unit-testing - NUnit 延迟约束似乎在 Unity3d 中不起作用
- swift - 下一个对象实例 IGListKit
- python - 数据集中的空值
- python - 如何在没有 /F 的 Windows 上使用 taskkill 杀死 python
- shell - 在 Makefile 中拆分和剪切字符串
- yaml - 无法将示例添加到 YAML 文件
- android - Android位图压缩webp到jpg不改变mime类型