注:该学习笔记内容针对Python语言程序设计视频课,部分截图来自视频课课件,中国大学MOOC–Python语言程序设计,有兴趣的同学可自行搜索
Python--组合数据类型
集合类型及操作
集合类型定义
集合是多个元素的无序组合
- 集合类型与数学中的集合概念一致
- 集合元素之间无序,每个元素唯一,不存在相同元素
- 集合元素不可更改,不能是可变数据类型
- 集合用大括号{} 表示,元素间用逗号分隔
- 建立集合类型用{} 或set()
- 建立空集合类型,必须使用set()(此处为与后面建立字典相区别)
示例:
集合操作符
6个操作符
操作符及应用 | 描述 |
---|---|
S \ T | 并,返回一个新集合,包括在集合S和T中的所有元素 |
S-T | 差,返回一个新集合,包括在集合S但不在T中的元素 |
S & T | 交,返回一个新集合,包括同时在集合S和T中的元素 |
S ^ T | 补,返回一个新集合,包括集合S和T中的非相同元素 |
S <= T 或S < T | 返回True/False,判断S和T的子集关系 |
S >= T 或S > T | 返回True/False,判断S和T的包含关系 |
4个增强操作符
操作符及应用 | 描述 |
---|---|
S \ = T | 并,更新集合S,包括在集合S和T中的所有元素 |
S -=T | 差,更新集合S,包括在集合S但不在T中的元素 |
S &= T | 交,更新集合S,包括同时在集合S和T中的 |
S ^= T | 补,更新集合S,包括集合S和T中的非相同元素 |
举例:
集合处理方法
操作函数或方法 | 描述 |
---|---|
S.add(x) | 如果x不在集合S中,将x增加到S |
S.discard(x) | 移除S中元素x,如果x不在集合S中,不报错 |
S.remove(x) | 移除S中元素x,如果x不在集合S中,产生KeyError异常 |
S.clear() | 移除S中所有元素 |
S.pop() | 随机返回S的一个元素,更新S,若S为空产生KeyError异常 |
S.copy() | 返回集合S的一个副本 |
len(S) | 返回集合S的元素个数 |
x in S | 判断S中元素x,x在集合S中,返回True,否则返回False |
x not in S | 判断S中元素x,x不在集合S中,返回True,否则返回False |
set(x) | 将其他类型变量x转变为集合类型 |
示例:
其中第一个结果说明-集合间无序
集合类型应用场景
包含关系比较
>>