本文实例分析了python集合类型用法。分享给大家供大家参考。具体分析如下:
python的集合类型和其他语言类似, 是一个无序不重复元素集,我在之前学过的其他的语言好像没有见过这个类型,基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和sysmmetric difference(对称差集)等数学运算,和我们初中数学学的集合的非常的相似。
一、先看下python 集合类型的不重复性,这方面做一些去重处理非常的好,比如我们要处理一些数据,想把重复的数据给
去掉,然后在操作的话,可以把它转换成集合类型,然后在由集合类型转换成其他的类型。
1
|
a = [ 2 , 3 , 4 , 2 , 1 ] |
我们最终要实现的效果是:
1
|
a = [ 1 , 2 , 3 , 4 ] |
那我们要怎么实现呢。
观察下这个列表,我们发现列表里有重复的元素存在,所以我们第一想到的就是去掉列表里的重复元素。
1
2
|
a = set (a) print a |
集合a的结果是:
1
|
set ([ 1 , 2 , 3 , 4 ]) |
下一步要实现排序,我们又想到了一个比较简单的方法,因为集合没有排序方法,而列表有排序的方法,所以我们们把它转换成python 列表的类型,调用列表的排序方法。
1
2
3
|
a = list (a) a.sort() print a |
列表a的结果是:
1
|
[ 1 , 2 , 3 , 4 ] |
说到集合,也可以说说 python 元组和 python数据类型总结
二、union(联合), intersection(交), difference(差)
1
2
|
a = set ( 'abcde' ) b = set ( 'bdcf' ) |
求集合的交集:
a & b
结果是:
1
|
set ([ 'c' , 'b' , 'd' ]) |
求差集:
a - b
结果是:
1
|
set ([ 'a' , 'e' ]) |
求联合:
a|b
结果是:
1
|
set ([ 'a' , 'c' , 'b' , 'e' , 'd' , 'f' ]) |
总结:python集合和数学的集合概念比较像,经常用在数据的去重处理和一些数据的中转处理。
希望本文所述对大家的Python程序设计有所帮助。