python数据类型--set(集合)
博客地址:http://www.cnblogs.com/yudanqu/
首先,简单介绍一下set,set就是我们中学时所学的集合,当时集合的性质就包括一点,集合里不能有重复的数字。我们现在所用到的集合更为广泛,里面可以存放字符等等。
- set:类似于dict,是一组key的集合,不存储value
- 本质:无序和无重复元素的集合
或许我说他类似于dict,对于刚入门的同学来说不太理解,这怎么会类似呢?给大家看一下:
有没有发现点什么,字典(dict)和集合(set)都是用大括号来表示,这就是他的本质所在,那么先往下看。
1、创建
(1)创建set需要一个list或者tuple或者dict作为输入集合
(2)其中重复元素在set中会自动过滤
2、添加
s为一个集合,向其中添加元素:
- s.add(6) # 向其中添加数字6,若添加重复则没有效果
- s.add([7,8,9]) # 报错,因为列表不能作为key,list和dict是可变对象
- # 元组可以作为添加的对象,因为元组是不可变对象
- s.update() # 可以将列表元组等拆分开打碎存入set,包括字符串,也会被拆开存入集合
3、删除
- s.remove() # 参数为里面的元素,不能通过下标删除,因为本身无序,没有索引
- set没有索引,但可以遍历输出
- 也可以通过 for index,data in enumeration(s),这样看似是有索引的,但是也不是本身有效的
4、交集
1 a1 = s1 & s2 # 求交集并输出新的set
5、并集
1 a2 = s1 | s2 # 求并集返回新的set
*set本身不常用,但可以利用他的类型转换,利用其无重复的特性
作者:渔单渠(yudanqu)
作者:渔单渠 微信搜索“小田学Python”
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.