本文目录一览:
Python 简明教程 ---13,Python 集合
目录
前几节我们已经介绍了Python 中的 列表list , 元组tuple 和 字典dict ,本节来介绍Python 中的最后一种数据结构—— 集合set 。
Python 中的 set 与 dict 很像,唯一的不同是, dict 中保存的是 键值对 ,而 set 中只保存 键 ,没有 值 。
Python 集合 有如下特点:
Python 集合的声明有两种方式:
创建 空集合 时,只能用 set() ,而不能用 {} :
创建 非空集合 时,可以用 set() ,也可以用 {} :
由于集合中的元素是唯一的,如果初始化时的 可迭代 数据中有重复的元素,则会自动删去重复的元素:
使用 len() 函数可以查看集合中元素的个数:
由于Python 集合中的元素的是无序的,所以可不能使用 下标 的方式来访问集合中的单个元素。
我们可以使用 for 循环 来遍历集合中的所有元素:
我们可以对两个集合进行如下运算:
交集与并集
in 运算
使用 dir(set) 查看集合支持的所有方法:
下面一一介绍这些 非魔法方法 ,共17 个。
1. add 方法
由于集合中的元素是唯一的,向集合中添加元素时有两种情况:
示例:
2. remove 方法
示例:
3. discard 方法
示例:
4. pop 方法
示例:
5. union 方法
示例:
6. update 方法
示例:
7. clear 方法
示例:
8. copy 方法
示例:
9. difference 方法
示例:
10. difference_update 方法
示例:
11. intersection 方法
示例:
12. intersection_update 方法
示例:
13. isdisjoint 方法
示例:
14. issubset 方法
示例:
15. issuperset 方法
示例:
16. symmetric_difference 方法
示例:
17. symmetric_difference_update 方法
示例:
(完。)
推荐阅读:
Python 简明教程 --- 8,Python 字符串函数
Python 简明教程 --- 9,Python 编码
Python 简明教程 ---10,Python 列表
Python 简明教程 ---11,Python 元组
Python 简明教程 ---12,Python 字典
Python中创建集合的方法有哪些呢?
集合分为两种:可变集合(set)和不可变集合(frozenset),现在学习的是可变集合。
在Python中,有关于集合的操作主要有:集合的创建;集合的添加和删除;集合的交、并和差集运算。
今天先来学习如何创建集合。
集合的创建有两种方法:直接赋值法和set()函数法。
1、直接赋值法
和Python的其它序列一样,采用直接赋值法就可以直接创建一个集合,具体语法格式如下:
setname = {“element1”,“element2”,“element3”,……,“elementn”,}
从格式上看,和其它的序列创建方法基本一样,就是集合名setname直接使用赋值运算符等号“=”赋值,等号后面的元素内容使用英文半角的大括号“{ }”括起来,各个元素之间依然使用英文半角的逗号“,”分隔。
这里虽然和字典一样使用大括号“{ }”,但是只要记住字典的元素是由键值对组成的(详见前第62节内容),就完全可以区分所创建的是字典还是集合了。
Python精讲:Python中集合的交集并集差集和对称差集运算方法详解
欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《Python中集合的交集、并集、差集和对称差集运算方法详解》。主要讲的是集合运算的相关的概念,及运算方法,包括:集合的交集、集合的并集、集合的差集、集合的对称差集、集合的交集运算方法、集合的并集运算方法、集合的差集运算方法、集合的对称差集运算方法。
在Python中,集合最常用的操作就是进行交集、并集、差集和对称差集的运算。
要想学习集合的交集、并集、差集和对称差集运算方法,首先我们来了解这些名词的含义:
设A、B两个集合,由所有属于集合A且属于集合B的元素所组成的集合,叫做集合A与集合B的交集。在Python中,进行交集运算时使用“”符号。
给定两个集合A、B,把他们所有的元素合并在一起组成的集合,叫做集合A与集合B的并集。在Python中,进行并集运算时使用“|”符号。
设A,B是两个集合,则所有属于A且不属于B的元素构成的集合,叫做集合A与集合B的差集。在Python中,进行差集运算时使用“-”符号。
对称差集也称为对称差分或者补集,设A,B是两个集合,所有不相同的集合,叫做集合A与集合B的对称差集(对称差分或者补集)。在Python中,进行对称差集运算时使用“^”符号。
上面都是概念性的描述,下面站长在线来举实际的场景来对交集、并集、差集和对称差集运算方法进行深入浅出的解读。
场景模拟:某高中三年级,文科班高考的科目是语文、数学、英语、政治、 历史 和地理。理科班高考的科目是语文、数学、英语、物理、化学和生物。
设定集合A为文科班高考的科目,集合B为理科班高考的科目。
A = {'语文','数学','英语','政治',' 历史 ','地理'}
B = {'语文','数学','英语','物理','化学','生物'}
我们使用集合的交集运算的时候可以采用两种方式,一种是使用“”运算符进行操作,另一种是使用 intersection() 方法来实现。
运行结果:
运行结果:
同理集合B和集合A的交集也是一样。我这里就不重复了,自己去体验一下。
集合的并集运算也有两种方式,一种是使用“|”运算符进行操作,另一种是使用union()方法来实现。
运行结果如下:
运行结果为:
同理集合B和集合A的并集也是一样。自己去体验一下吧!
集合的差集运算也有两种方式,一种是使用“-”运算符进行操作,另一种是使用difference()方法来实现。
运行结果为:
上面是集合A和集合B的差集,但是集合B和集合A的差集就不是一样的了哦!
运行结果为:
从上面可以看出,集合A和集合B的差集 与 集合B和集合A的差集是不一样的,(A - B)是A中存在的部分,(B - A)是B中存在的部分。
运行结果:
同理,使用difference()方法进行集合B和集合A的差集也是不同的
运行结果:
集合的差集运算也有两种方式,一种是使用“^”运算符进行操作,另一种是使用symmetric_difference()方法来实现。
运行结果为:
运行结果为:
同样的,集合B与集合A的对称差集也是一样,自己去体验一下。
我们对集合的交集、并集、差集和对称差集运算方法全部详细的讲解了一遍,通过运行结果,我们得出结论:
集合中进行交集、并集、对称差集进行运算的时候,集合A与集合B,位置替换的时候,结果相同。
集合中进行差集运算的时候,集合A与集合B,位置替换的时候,结果不同,为前面那个集合独立存在的部分。
到此为止,本节课的内容《Python中集合的交集、并集、差集和对称差集运算方法详解》就完全讲完了,主要讲的集合运算的相关的概念,及运算方法,包括:集合的交集、集合的并集、集合的差集、集合的对称差集、集合的交集运算方法、集合的并集运算方法、集合的差集运算方法、集合的对称差集运算方法。