一、集合简介
集合是一个无序的,不重复的数据组合。
集合的应用场景主要有:
- 列表去重
- 关系测试:如交集、差集、并集的关系测试
二、集合的定义
1.定义一个空集合
In [4]: s = {}
In [5]: type(s) #发现是字典
Out[5]: dict
In [6]: s = set()
In [7]: type(s) #发现是集合
Out[7]: set
2.定义一个有元素的集合
In [10]: s = {1,2,3,4,'s'}
In [11]: s
Out[11]: {1, 2, 3, 4, 's'}
In [12]: type(s)
Out[12]: set
In [13]: set = {1,2,3,'hello',(1,2,3)} #集合元素可以是元组
In [14]: set
Out[14]: {1, 2, 3, 'hello', (1, 2, 3)}
In [15]: set = {1,2,3,'hello',(1,2,3),[1,2,3]} #发现集合的元素不能为列表
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-15-9b6dfb40f232> in <module>()
----> 1 set = {1,2,3,'hello',(1,2,3),[1,2,3]}
TypeError: unhashable type: 'list'
三、集合的操作
1.与字典类似:
- 集合集不支持的特性:索引, 切片, 重复,连接
- 集合支持的特性:成员操作符
In [16]: set
Out[16]: {
1, 2, 3, 'hello', (1, 2, 3)}
In [17]: set[1]
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-17-3c9dd01669e4> in <module>()
----> 1 set[1]
TypeError: 'set' object