集合(set)是一种无序且不重复的数据类型,它是由一组互不相同的元素组成的。在 Python 中,集合类型用大括号 {} 表示,或者使用 set() 函数创建。
![python数据类型-集合类型详解(集合类型有哪些优点) 图片[1]-python数据类型-集合类型详解(集合类型有哪些优点)-不念博客](https://www.bunian.cn/wp-content/uploads/2023/03/PNG.webp)
下面是一个创建集合的例子:
# 创建集合set1 = {1, 2, 3, 4, 5}set2 = set([4, 5, 6, 7, 8])集合和列表和元组不同,它是无序的,这意味着元素没有固定的顺序。这也意味着我们不能使用索引来访问集合中的元素。另外,集合中的元素是唯一的,即集合中不允许出现重复的元素。如果尝试将重复元素添加到集合中,集合会自动将重复元素去重,只保留一个元素。下面是一些集合常用操作:添加元素:使用 add() 方法添加单个元素,使用 update() 方法添加多个元素。# 创建集合set1 = {1, 2, 3}# 添加单个元素set1.add(4)print(set1) # 输出 {1, 2, 3, 4}# 添加多个元素set1.update([4, 5, 6])print(set1) # 输出 {1, 2, 3, 4, 5, 6}删除元素:使用 remove() 或 discard() 方法删除指定元素。如果指定的元素不存在,remove() 方法会抛出异常,而 discard() 方法则不会抛出异常。还可以使用 pop() 方法随机删除一个元素。# 创建集合set1 = {1, 2, 3, 4, 5}# 删除指定元素set1.remove(3)print(set1) # 输出 {1, 2, 4, 5}# 随机删除一个元素set1.pop()print(set1) # 输出 {2, 4, 5}# 删除不存在的元素set1.discard(6)print(set1) # 输出 {2, 4, 5}# 删除不存在的元素并抛出异常set1.remove(6) # 抛出 KeyError 异常集合运算:包括交集、并集、差集和对称差集等。# 创建集合set1 = {1, 2, 3}set2 = {3, 4, 5}# 交集print(set1 & set2) # 输出 {3}# 并集print(set1 | set2) # 输出 {1, 2, 3, 4, 5}# 差集print(set1 - set2) # 输出 {1, 2}# 对称差集print(set1 ^ set2) # 输出 {1, 2, 4, 5}# 创建集合 set1 = {1, 2, 3, 4, 5} set2 = set([4, 5, 6, 7, 8]) 集合和列表和元组不同,它是无序的,这意味着元素没有固定的顺序。这也意味着我们不能使用索引来访问集合中的元素。另外,集合中的元素是唯一的,即集合中不允许出现重复的元素。如果尝试将重复元素添加到集合中,集合会自动将重复元素去重,只保留一个元素。 下面是一些集合常用操作: 添加元素:使用 add() 方法添加单个元素,使用 update() 方法添加多个元素。 # 创建集合 set1 = {1, 2, 3} # 添加单个元素 set1.add(4) print(set1) # 输出 {1, 2, 3, 4} # 添加多个元素 set1.update([4, 5, 6]) print(set1) # 输出 {1, 2, 3, 4, 5, 6} 删除元素:使用 remove() 或 discard() 方法删除指定元素。如果指定的元素不存在,remove() 方法会抛出异常,而 discard() 方法则不会抛出异常。还可以使用 pop() 方法随机删除一个元素。 # 创建集合 set1 = {1, 2, 3, 4, 5} # 删除指定元素 set1.remove(3) print(set1) # 输出 {1, 2, 4, 5} # 随机删除一个元素 set1.pop() print(set1) # 输出 {2, 4, 5} # 删除不存在的元素 set1.discard(6) print(set1) # 输出 {2, 4, 5} # 删除不存在的元素并抛出异常 set1.remove(6) # 抛出 KeyError 异常 集合运算:包括交集、并集、差集和对称差集等。 # 创建集合 set1 = {1, 2, 3} set2 = {3, 4, 5} # 交集 print(set1 & set2) # 输出 {3} # 并集 print(set1 | set2) # 输出 {1, 2, 3, 4, 5} # 差集 print(set1 - set2) # 输出 {1, 2} # 对称差集 print(set1 ^ set2) # 输出 {1, 2, 4, 5}# 创建集合 set1 = {1, 2, 3, 4, 5} set2 = set([4, 5, 6, 7, 8]) 集合和列表和元组不同,它是无序的,这意味着元素没有固定的顺序。这也意味着我们不能使用索引来访问集合中的元素。另外,集合中的元素是唯一的,即集合中不允许出现重复的元素。如果尝试将重复元素添加到集合中,集合会自动将重复元素去重,只保留一个元素。 下面是一些集合常用操作: 添加元素:使用 add() 方法添加单个元素,使用 update() 方法添加多个元素。 # 创建集合 set1 = {1, 2, 3} # 添加单个元素 set1.add(4) print(set1) # 输出 {1, 2, 3, 4} # 添加多个元素 set1.update([4, 5, 6]) print(set1) # 输出 {1, 2, 3, 4, 5, 6} 删除元素:使用 remove() 或 discard() 方法删除指定元素。如果指定的元素不存在,remove() 方法会抛出异常,而 discard() 方法则不会抛出异常。还可以使用 pop() 方法随机删除一个元素。 # 创建集合 set1 = {1, 2, 3, 4, 5} # 删除指定元素 set1.remove(3) print(set1) # 输出 {1, 2, 4, 5} # 随机删除一个元素 set1.pop() print(set1) # 输出 {2, 4, 5} # 删除不存在的元素 set1.discard(6) print(set1) # 输出 {2, 4, 5} # 删除不存在的元素并抛出异常 set1.remove(6) # 抛出 KeyError 异常 集合运算:包括交集、并集、差集和对称差集等。 # 创建集合 set1 = {1, 2, 3} set2 = {3, 4, 5} # 交集 print(set1 & set2) # 输出 {3} # 并集 print(set1 | set2) # 输出 {1, 2, 3, 4, 5} # 差集 print(set1 - set2) # 输出 {1, 2} # 对称差集 print(set1 ^ set2) # 输出 {1, 2, 4, 5}
集合类型的主要优点如下:
- 去重功能:集合中的元素是唯一的,可以方便地对一组数据进行去重操作。
- 支持集合运算:集合类型支持交、并、差等基本集合运算,可以方便地对数据进行集合运算。
- 可变性:集合类型是可变的,可以通过 add()、remove() 等方法对集合进行增删改操作。
- 效率高:集合类型内部使用了哈希表,因此可以快速进行查找和判断元素是否存在。
- 无序性:集合类型是无序的,可以根据需要自由排序,也可以使用 sorted() 方法进行排序。
© 版权声明
本站文章由不念博客原创,未经允许严禁转载!
THE END