[英]swap key value pairs in a dictionary with values as lists
我有一个包含键和值作为列表的字典。 就像是:
d={1:[0,1,2,3,4],2:[1,3]}
我一直在寻找交换键值对。 我想要得到的 output 是:
o={0:[1],1:[1,2],2:[1],3:[1,2],4:[1]}
想知道是否有办法以最有效的方式实现这一目标
使用默认字典:
In [30]: d={1:[0,1,2,3,4],2:[1,3]}
In [31]: from collections import defaultdict
In [32]: out = defaultdict(list)
In [33]: for k, v in d.items():
...: for vv in v:
...: out[vv].append(k)
...:
In [34]: dict(out)
Out[34]: {0: [1], 1: [1, 2], 2: [1], 3: [1, 2], 4: [1]}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.