Python程序查找两个数组中的共同元素
在实际编程中,我们经常需要在两个数组之间查找共同存在的元素,以便进行一些操作。Python提供了多种方法来解决这个问题,本文将介绍其中几种常用的方法。
方法一:使用set()函数和“&”操作符
A = [4, 2, 6, 5, 3, 8]
B = [5, 1, 8, 3, 7, 9]
setA = set(A)
setB = set(B)
common = setA & setB
print(common)
在这个例子中,我们定义了两个包含整数的列表A和B,然后使用set()函数将它们转换成集合setA和setB。接下来,我们使用“&”操作符计算两个集合的交集,并将结果存储在变量common中。最后,我们打印出common。输出结果为:{8, 3, 5}。
方法二:使用内置函数intersection()
A = [4, 2, 6, 5, 3, 8]
B = [5, 1, 8, 3, 7, 9]
setA = set(A)
setB = set(B)
common = setA.intersection(setB)
print(common)
这个方法与第一种方法非常类似。我们同样使用set()函数将两个列表转换成集合,然后使用intersection()函数计算两个集合的交集,并将结果存储在变量common中。最后,我们打印出common。输出结果与第一种方法相同:{8, 3, 5}。
方法三:使用列表推导式
A = [4, 2, 6, 5, 3, 8]
B = [5, 1, 8, 3, 7, 9]
common = [i for i in A if i in B]
print(common)
这个方法使用了列表推导式的方式。我们遍历列表A中的每一个元素i,检查它是否同时存在于列表B中,如果存在,则将它添加到新列表common中。最后,我们打印出common。输出结果同样为:[5, 3, 8]。
方法四:使用函数set.intersection()
A = [4, 2, 6, 5, 3, 8]
B = [5, 1, 8, 3, 7, 9]
common = list(set(A).intersection(B))
print(common)
这种方法与第二种方法非常类似,只是我们没有直接使用集合的intersection()函数,而是使用它的函数形式,即set.intersection()。我们同样先将列表A转换成集合,然后将其与列表B的交集计算后,使用list()函数将结果转换回列表类型。最后,我们打印出common。输出结果同样为:[8, 3, 5]。
总结一下,我们介绍了Python中四种查找两个数组共同元素的方法,它们分别是使用set()函数和“&”操作符、使用内置函数intersection()、使用列表推导式以及使用函数set.intersection()。自行选择方法根据场景不同满足不同需求。