六、组合数据类型
- 6.1 集合类型及操作
- 6.2 序列类型及操作
- 元组类型、列表类型
- 6.3 实例9:基本统计值计算
- 6.4 字典类型及操作
- 6.5 模块5:jieba库的使用
- 6.6 实例10:文本词频统计
方法论
- python三种主流组合数据类型的使用方法
实践能力
- 学会编写处理一组数据的程序
6.1 集合类型及操作
单元开篇
- 集合类型定义
- 集合操作符
- 集合处理方法
- 集合类型应用场景
集合类型定义
集合是多个元素的无序组合
- 集合类型与数学中的集合概念一致
- 集合元素之间无序,每个元素唯一 ,不存在相同元素
- 集合元素不可更改,不能是可变数据类型
集合用大括号{}表示,元素间用逗号分隔
- 建立集合类型用{}或set()
- 建立空集合类型,必须使用set()
A = {"python", 123, ("python", 123)}
>>> {('python', 123), 123, 'python'}
B = set("python123")
>>> {'1', 'y', 'o', '2', '3', 't', 'h', 'n', 'p'}
C {"python", 123, "python", 123}
>>> {'python', 123}
重点
- 集合用大括号{} 表示,元素间用逗号分隔
- 集合中每个元素唯一 ,不存在相同元素
- 集合元素之间无序
集合操作符

A - B
>>> {123}
B - A
>>> {'3', '2', '1'}
A & B
>>> {'p', 'y'}
A | B
>>> {'1', 'p', '2', 'y', '3', 123}
A ^ B
>>> {'2', 123, '1', '3'}
集合处理方法
操作函数或方法 | <center>描述</center> |
---|---|
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转变为集合类型 |
遍历数组
A = {'p', 'y', 123}
for item in A:
print(item, end = '')
>>> p123y
try:
while True:
print(A.pop(), end = '')
except:
pass
>>> p123y
集合类型应用场景
"p" in {'p', 'y', 123}
>>> True
数据去重:集合类型所有元素无重复
ls = ['p', 'p', 'y', 'y', 123]
s = set(ls) 利用了集合无重复元素的特点
lt = list(s) 将集合转换为列表
单元小结
- 集合使用{}和set()函数创建
- 集合间操作:交(&)、并(|)、差(-)、补(^)、比较(>=<)
- 集合类型方法:.add()、discard()、.pop()等
- 集合类型主要应用于:包含关系比较、数据去重
网友评论