gpt4 book ai didi

python - 如何使用列表理解构建字典?

转载 作者:太空宇宙 更新时间:2023-11-03 12:15:27 25 4
gpt4 key购买 nike

如何使用列表推导式构建字典?

我有两个列表。

 series = [1,2,3,4,5]
categories = ['A', 'B', 'A', 'C','B']

我想构建一个以类别为键的字典。

感谢您的回答,我希望得到:

 {'A' : [1, 3], 'B' : [2, 5], 'C' : [4]}

因为键不能存在两次

最佳答案

你必须有一个元组列表。元组是键/值对。在这种情况下你不需要理解,只需压缩:

dict(zip(categories, series))

生产 {'A': 3, 'B': 5, 'C': 4} (正如评论所指出的)

编辑:查看键后,请注意字典中不能有重复的键。因此,在没有进一步阐明您想要什么的情况下,我不确定您正在寻找什么解决方案。

编辑:要得到你想要的,可能最简单的方法是使用 setdefault 或 defaultdict 做一个 for 循环。

categoriesMap = {}
for k, v in zip(categories, series):
categoriesMap.setdefault(k, []).append(v)

那应该产生 {'A': [1, 3], 'B': [2, 5], 'C': [3]}

关于python - 如何使用列表理解构建字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9454619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com