如何比较 python 中的两个列表,并在一个列表中写入相似的索引值,在另一个列表中写入不相似的值
How to compare two lists in python and write the similar index values in one list and non similar values in another list
考虑两个列表
a=[1,2,3], b=[1,4,5]。代码应该打印类似的值 c=[1] 并且代码应该打印 d=[2,3,4,5] 这表明不同的值
--完成--
你可以为此使用集合
a = [1,2,3]
b = [1,4,5]
c = list(set(a).intersection(b))
d = list(set(a).difference(b)) + list(set(b).difference(a))
intersection
查找共同元素,difference
查找不同元素。您必须以两种方式执行此操作,因为 difference
运算符基本上仅显示第一组中不在第二组中的元素。
下面给出了使用 和逻辑运算符的简单替代解决方案:
a = [1,2,3]
b = [1,4,5]
print([x for x in a if x in b])
print([x for x in set(a+b) if (x in a) ^ (x in b)])
set operation
的解决方案已经有人给出了,这里不再赘述。
考虑两个列表 a=[1,2,3], b=[1,4,5]。代码应该打印类似的值 c=[1] 并且代码应该打印 d=[2,3,4,5] 这表明不同的值
--完成--
你可以为此使用集合
a = [1,2,3]
b = [1,4,5]
c = list(set(a).intersection(b))
d = list(set(a).difference(b)) + list(set(b).difference(a))
intersection
查找共同元素,difference
查找不同元素。您必须以两种方式执行此操作,因为 difference
运算符基本上仅显示第一组中不在第二组中的元素。
下面给出了使用
a = [1,2,3]
b = [1,4,5]
print([x for x in a if x in b])
print([x for x in set(a+b) if (x in a) ^ (x in b)])
set operation
的解决方案已经有人给出了,这里不再赘述。