我创建了两个列表。
list1= [a,b,c,a,d]
list2=[1,2,3,4,5]
我想根据索引位置找到这两个列表之间的关系,即
在 list1 中 a
重复 2 次索引 0,3
。在 list2 中索引 0,3
值为 1 ,4
关系是一对多:{1,4}
下一个b
在列表1
中不重复,它的索引是1
,列表2索引1
值为2
,关系是一对一的 b:{2}
我的预期输出将是 {a:{1,4},b:{2},c:{3},d:{5}}
最佳答案
我会使用defaultdict :
from collections import defaultdict
list1 = ['a', 'b', 'c', 'a', 'd']
list2 = [1, 2, 3, 4, 5]
result = defaultdict(set)
for value1, value2, in zip(list1, list2):
result[value1].add(value2)
print(dict(result))
输出
{'a': {1, 4}, 'b': {2}, 'c': {3}, 'd': {5}}
关于python - 如何识别Python中两个列表之间的关系/映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53116334/