python中set(集合)类型的操作

来源:互联网 发布:睿智体育0 淘宝店 编辑:程序博客网 时间:2024/06/15 23:46

Python 的set集合类型是一个无序不重复元素集。基本功能包括关系测试和消除重复元素。集合对象还支持union(联合), intersection(交), difference(差)和sysmmetricdifference(对称差集)等数学运算,和我们初中数学学的集合的非常的相似。


### 1、set的不重复性

先看下python 集合类型的不重复性,拿来做一些去重处理非常棒,比如我们要处理一堆数据,想把重复的数据给去掉,这时候就可以把这堆数据转换成集合类型,然后再由集合类型转换成其他的类型。
例如:
a = [2,3,4,2,1]
我们最终要实现的效果是:a = [1,2,3,4] ,即去重+排序
那我们要就可以把这个列表转换成set来进行去重。
a = set(a)
print a
结果得到:set([1, 3, 2, 4])
下一步要实现排序,而集合没有排序方法,列表有一个sort方法可以进行排序,所以我们把它转换成python 列表的类型,再调用列表的排序方法。
a = list(a)
a.sort()
print a
列表a的结果是:[1,2,3,4]


###2、对set进行union(联合), intersection(交), difference(差)

a = set(‘abcde’)
b = set(‘bdcf’)
求集合的交集:
a & b
结果是: set([‘c’, ‘b’, ‘d’])
求差集:
a - b
结果是:set([‘a’, ‘e’])
求联合:
a|b
结果是:set([‘a’, ‘c’, ‘b’, ‘e’, ‘d’, ‘f’])


###3、set的基本操作

3.1 创建set:
如下图中的几种方法,其中注释中有交代一些需要注意的地方哦~
这里写图片描述

这里写图片描述

这里写图片描述

3.2 增加元素:
set.add() 、set.update()
这里写图片描述

3.3 删除元素:
set.pop() 、 set.remove() 、 set.discard() 、 set.clear()
注意这几种方法的区别,下图注释中有交代~

这里写图片描述

ending - - - - - - - - - -
最后总结:python中的set集合和数学的集合概念比较像,经常用在数据的去重处理和一些数据的中转处理。

原创粉丝点击