Python实现两个list求交集、并集、差集的方法示例
在Python中,可以使用set集合的交集、并集、差集等操作来实现两个list的交集、并集、差集等操作。本文将详细讲解Python中实现两个list求交集、并集、差集的方法示例,包括使用set集合的方法和使用列表推导式的方法。
使用set集合的方法
求交集
使用set集合的intersection()方法可以求两个list的交集。例如:
list1 = [1, 2, 3, 4, 5]
list2 = [4, 5, 6, 7,8]
set1 = set(list1)
set2 = set(list2)
intersection = set1.intersection(set2)
print(intersection) # 输出交集
求并集
使用set集合的union()方法可以求两个list的并集。例如:
list1 = [1, 2, 3, 4, 5]
list2 = [4, 5, 6, 7, 8]
set1 = set(list1)
set2 = set(list2)
union = set1.union(set2)
print(union) # 输出并集
求差集
使用set集合的difference()方法可以求两个list的差集。例如:
list1 = [1, 2, 3, 4, 5]
list2 = [4, 5, 6, 7, 8]
set1 = set(list1)
set2 = set(list2)
difference = set1.difference(set2)
print(difference) # 输出差集
使用列表推导式的方法
求交集
使用列表推导式可以求两个list的交集。例如:
list1 = [1, 2, 3, 4, 5]
list2 = [4, 5, 6, 7, 8]
intersection = [i for i in list1 if i in list2]
print(intersection) # 输出交集
求并集
使用列表推导式可以求两个list的并集。例如:
list1 = [1, 2, 3, 4, 5]
list2 = [4, 5, 6, 7, 8]
union = list1 + [i for i in list2 if i not in list1]
print(union) # 输出并集
求差集
使用列表推导式可以求两个list的差集。例如:
list1 = [1, 2, 3, 4, 5]
list2 = [4, 5, 6, 7, 8]
difference = [i for i in list1 if i not in list2]
print(difference) # 输出差集
示例说明
示例一:使用set集合的方法求交集
list1 = [1, 2, 3, 4, 5]
list2 = [4, 5, 6, 7, 8]
set1 = set(list1)
set2 = set(list2)
intersection = set1.intersection(set2)
print(intersection) # 输出交集
上述代码演示了如何使用set集合的intersection()方法求两个list的交集。
示例二:使用列表推导式的方法求并集
list1 = [1, 2, 3, 4, 5]
list2 = [4, 5, 6, 7, 8]
union = list1 + [i for i in list2 if i not in list1]
print(union) # 输出并集
上述代码演示了如何使用列表推导式求两个list的并集。