Python中的集合一起来学习一下
什么是集合?
集合是 Python 中的一种无序且元素唯一的数据类型。无序意味着元素存储在集合中的顺序与添加元素的顺序不一定相同。元素唯一意味着集合中的元素不能重复。Python 中的集合类类似于数学中的集合,可以进行交集、并集、差集等基本操作。
如何创建集合?
Python 中的集合可以使用花括号 {} 或 set() 函数来创建。需要注意的是,当使用花括号创建空集合时,需要使用 set() 函数,因为 {} 创建的是一个空字典。
# 花括号创建集合
my_set = {'apple', 'banana', 'orange'}
print(my_set)
# set() 函数创建集合
my_set = set(['apple', 'banana', 'orange'])
print(my_set)
# 创建空集合
empty_set = set()
print(empty_set)
输出:
{'apple', 'orange', 'banana'}
{'banana', 'orange', 'apple'}
set()
如何向集合中添加元素?
可以使用 add() 方法向集合中添加元素,也可以使用 update() 方法向集合中添加多个元素。add() 方法只能添加一个元素,如果需要添加多个元素,则需要使用 update() 方法,并将多个元素包装在一个列表或集合中。
# 向集合中添加元素
my_set = {'apple', 'banana', 'orange'}
my_set.add('pear')
print(my_set)
# 向集合中添加多个元素
my_set.update(['grape', 'watermelon'])
print(my_set)
输出:
{'apple', 'orange', 'banana', 'pear'}
{'grape', 'orange', 'banana', 'watermelon', 'apple', 'pear'}
如何从集合中移除元素?
可以使用 remove() 方法从集合中移除指定元素,如果该元素不存在,则会抛出 KeyError 异常。如果不确定元素是否存在集合中,则可以使用 discard() 方法移除元素,如果该元素不存在,则不会报错。
# 从集合中移除元素
my_set = {'apple', 'banana', 'orange'}
my_set.remove('banana')
print(my_set)
# 移除不存在的元素,抛出 KeyError 异常
# my_set.remove('pear')
# 移除不存在的元素,discard() 方法不会报错
my_set.discard('pear')
print(my_set)
输出:
{'apple', 'orange'}
{'apple', 'orange'}
如何清空集合?
可以使用 clear() 方法清空集合。
# 清空集合
my_set = {'apple', 'banana', 'orange'}
my_set.clear()
print(my_set)
输出:
set()
如何进行集合间的操作?
可以使用 &、|、-、^ 等符号进行集合间的交集、并集、差集、对称差集等操作。具体如下:
# 交集
set_1 = {1, 2, 3, 4}
set_2 = {3, 4, 5, 6}
print(set_1 & set_2)
# 并集
print(set_1 | set_2)
# 差集
print(set_1 - set_2)
# 对称差集
print(set_1 ^ set_2)
输出:
{3, 4}
{1, 2, 3, 4, 5, 6}
{1, 2}
{1, 2, 5, 6}
示例1:寻找两个列表中的不同元素
list1 = [1, 2, 3, 4, 5]
list2 = [3, 4, 5, 6, 7]
set1 = set(list1)
set2 = set(list2)
diff = set1 ^ set2
print(diff)
输出:
{1, 2, 6, 7}
示例2:从一个列表中删除重复元素
list1 = [1, 2, 3, 2, 1, 4, 5, 4]
set1 = set(list1)
unique_list = list(set1)
print(unique_list)
输出:
[1, 2, 3, 4, 5]
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python中的集合一起来学习一下 - Python技术站