① python集合的运算(交集、并集、差集、补集)
我们在遇到一些问题的时候,使用集合的交集、并集和差集能够更便捷的帮助我们去解决问题,看下面一个例子。
某学校有两个班级,班级A需要学习数学、语文、英语、物理、化学和生物,班级B需要学习数学、语文、英语、政治、地理和历史。
我们可以直接看出A班级和B班级的交集为数学、语文和英语,并集为数学、语文、英语、物理、化学、生物、政治、地理、历史,A和B的差集为物理、化学和生物。
那么怎么使用Python去完成这些运算?
我们先在这里定义两个集合,
因为是求交集,因此A和B的位置调换依然不影响结果。
使用集合求并集的方式同样也是两种方式,一种是使用 ‘|’ 运算符进行操作,一种是使用 union() 方法来实现。
求并集的时候同样不需要注意 A 和 B 的位置关系。
使用集合求差集的方式同样也是两种方式,一种是使用 ‘-’ 运算符进行操作,一种是使用 difference() 方法来实现。
在方法2中注意 A 和 B 的位置不同的时候是有区别的,如果是 A 使用 difference() 方法,那么是输出 A 中有而 B 中没有的元素,如果是 B 使用 difference() 方法,那么是输出 B 中有而 A 中没有的元素。
学习完了集合,四种核心集合我们已经基本掌握,接下来几节我们来通过学习一些字符串的相关操作,学习字符串的过程中会穿插着前面简单介绍过但没仔细讲解的方法及操作。
② 全面理解Python集合
Python中的集合是一组无序、不可重复元素序列,类似于数学中的集合概念。以下是关于Python集合的全面理解:
一、集合的基本特性 无序性:集合中的元素没有固定的顺序。 唯一性:集合中的元素必须是独一无二的,不允许有重复元素。 不可变性要求:集合中的元素必须是不可变类型,如整数、浮点数、字符串、元组等,不能是列表、字典等可变数据类型。
二、集合的创建 可以使用大括号 { } 创建集合,但注意空集合必须使用 set 函数创建,因为 { } 用于创建空字典。 例如:my_set = {1, 2, 3} 或 empty_set = set。
三、集合的常用方法1. add:向集合中添加一个元素,如果该元素已存在,则不执行任何操作。2. clear:移除集合中的所有元素。3. :复制集合,返回一个新的集合。4. difference:返回集合的差集,即包含在第一个集合中但不在第二个集合中的元素。5. difference_update:直接在原集合中移除两个集合中都存在的元素。6. discard:移除集合中指定的元素,如果该元素不存在,则不执行任何操作。7. intersection:返回两个或多个集合的交集。8. intersection_update:在原始集合上移除不重叠的元素,只保留交集部分。9. isdisjoint:判断两个集合是否没有交集。10. issubset:判断一个集合是否是另一个集合的子集。11. issuperset:判断一个集合是否包含另一个集合的所有元素。12. pop:随机移除集合中的一个元素并返回。13. remove:移除集合中指定的元素,如果该元素不存在,则抛出异常。14. symmetric_difference:返回两个集合的对称差集,即两个集合中不相同的元素。15. symmetric_difference_update:用另一个集合的对称差集更新当前集合。16. union:返回两个或多个集合的并集。17. update:用另一个集合或多个集合的元素更新当前集合,重复元素只保留一次。
这些方法和特性使得集合在Python中成为一种非常有用的数据结构,特别适用于去重、集合运算等场景。