我有一个列表列表:
[[0, 1, 2,], [130, 131], [142, 143]]
我想将此列表 l 转换为以下形式的字典:
{'0': 0, '1': 0, '2':'0, '130': 1, '131: 1, '142': 2, '143': 2}
所以关键是列表元素。相应的值是 l 的子列表中的条目名称。我希望你能关注我的问题。
我试过下面的代码,根本不起作用。
cluster_list = list(range(len(list(l))))
dictionary = dict(zip(cluster_list, l))
我必须补充:每个子列表都说明哪些节点是同一集群的成员。所以每个节点只出现一次。
希望我们能一起解决这个问题。谢谢!
请您参考如下方法:
使用枚举
例如:
data = [[0, 1, 2], [130, 131], [142, 143]]
print({i: k for k, v in enumerate(data) for i in v})
#or print({str(i): k for k, v in enumerate(data) for i in v}) #For string key.
输出:
{0: 0, 1: 0, 2: 0, 130: 1, 131: 1, 142: 2, 143: 2}
