![](/img/trans.png)
[英]How can I convert a dictionary that has frozensets as keys and integers as values into a list of dictionaries?
[英]How can I convert a list of lists to a dictionary whose keys are integers and values are the index of the sublist to which the integer belongs?
我有一个列表列表,其中每个 integer 0..N 恰好属于外部列表中的一个列表。 例如,如果 N=6,我有类似的东西
L=[[0,4,5],[2,3],[1,6]]
我希望字典如下所示:
{0:0, 1:2, 2:1, 3:1, 4:0, 5:0}
例如,key:value 对 2:1 表示 2 属于 L[1]。
有没有一种简单的方法可以做到这一点?
L = [[0, 4, 5], [2, 3], [1, 6]]
result = {value: i for i, values in enumerate(L) for value in values}
print(result)
Output
{0: 0, 4: 0, 5: 0, 2: 1, 3: 1, 1: 2, 6: 2}
这相当于:
result = {}
for i, values in enumerate(L):
for value in values:
result[value] = i
在我看来,这里的关键是使用 enumerate 来访问L
的索引和元素。
L=[[0,4,5],[2,3],[1,6]]
result = dict()
for i,l in enumerate(L):
for item in l:
result[item]=i
print(result)
这将产生 output ,如:
{0: 0, 1: 2, 2: 1, 3: 1, 4: 0, 5: 0, 6: 2}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.