gpt4 book ai didi

python - 反转非唯一字典

转载 作者:行者123 更新时间:2023-11-28 22:18:56 25 4
gpt4 key购买 nike

我有一本字典,我需要根据非唯一值进行反转和分组,但根据现有的顶级 SO 答案失败。

>>> graph = { 'a': ['car','red'], 'b': ['car','blue'] }
>>> inv_map = {}
>>> for k,v in graph.items():
inv_map[v] = inv_map.get(v,[])
inv_map[v].append(k)

TypeError: unhashable type: 'list'

>>> isinstance(graph, dict)
True

建议?

最佳答案

由于值是列表,您需要迭代这些列表以累积键:

from collections import defaultdict
inv_map = defaultdict(list)

for k, vs in graph.items():
for v in vs:
inv_map[v].append(k)

inv_map.default_factory = None # quack like a normal dict

关于python - 反转非唯一字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50183936/

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