【发布时间】:2021-04-17 12:36:27
【问题描述】:
我不确定我是否以正确的方式提出问题,但这是我的问题:
我有以下格式的字典列表:
[
{'user': 'joe', 'IndexUsed': 'a'},
{'user': 'joe', 'IndexUsed': 'a'},
{'user': 'joe', 'IndexUsed': 'a'},
{'user': 'joe', 'IndexUsed': 'b'},
{'user': 'admin', 'IndexUsed': 'a'},
{'user': 'admin', 'IndexUsed': 'c'},
{'user': 'hugo', 'IndexUsed': 'a'},
{'user': 'hugo', 'IndexUsed': 'd'},
...
]
我希望我的最终结果如下所示:
[
{'user': 'joe', 'IndexUsed': ['a', 'b']},
{'user': 'admin', 'IndexUsed': ['a', 'c']},
{'user': 'hugo', 'IndexUsed': ['a', 'd']},
]
本质上,合并/去重IndexUsed 中的唯一字段并将它们减少到每个user 中只有一个字典
我已经研究过使用 reducer、dict 理解,并在 StackOverflow 上进行了搜索,但我在使用字符串查找用例时遇到了一些麻烦。我发现的大多数示例都是使用整数将它们组合成最终的 int/float,但在这里我宁愿将它组合成一个最终的字符串。你能帮我理解如何解决这个问题吗?
【问题讨论】:
-
所以您希望输出保留为字典列表,但 IndexUsed 键被合并到列表中?
标签: python python-3.x list dictionary-comprehension