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)

  博客地址:http://www.cnblogs.com/yudanqu/

作者:渔单渠 微信搜索“小田学Python”
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
原文地址:https://www.cnblogs.com/yudanqu/p/9082600.html