Python3 的数据类型5-集合

集合是一个无序不重复序列。

1. 集合创建

集合用大括号{}或set()创建。空集必须用set()来创建,而不能用{},因为{}用来创建空字典。
集合与字典都是用大括号{}包围,不同点在于,集合里面的元素并非成对,只是一个个独立值,而字典里是键值:值对,即:

>>>a={"key1":"value1","key2":"value2"}      字典
>>>b={value1,value2}                        集合

2. 集合运算

其实与数学的集合运算一样,因为是无序的,因此集合的加减不是值与值的加减,只是集合里值得增减,例如:

>>>a=set('abcdefabc')
>>>b=set('abcd')
>>>a
{'a', 'b', 'c', 'd', 'e', 'f'}        后面重复的abc删掉了
>>>a-b
{'e', 'f'}
>>>a|b        a与b并集
>>>a&b      a与b交集
>>>a^b      不同时包含a和b的元素,a交b的补集

3. 集合操作

序号 操作 描述
1 s.add(x) 增加元素x
2 s.remove(x) 删除元素x,没有x则发生错误
3 s.discard(x) 删除元素x,没有x也不会发生错误
4 s.pop() 脚本模式随机删除一个元素,交互模式删除最后一个元素?
5 len(s) 计算集合长度
6 s.clear 清空集合
7 x in s 判断x是否在s中

4. 集合方法

序号 方法 描述
add() 为集合添加元素
clear() 移除集合中的所有元素
copy() 拷贝一个集合
difference() 返回多个集合的差集
difference_update() 移除集合中的元素,该元素在指定的集合也存在。
discard() 删除集合中指定的元素
intersection() 返回集合的交集
intersection_update() 删除集合中的元素,该元素在指定的集合中不存在。
isdisjoint() 判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。
issubset() 判断指定集合是否为该方法参数集合的子集。
issuperset() 判断该方法的参数集合是否为指定集合的子集
pop() 随机移除元素
remove() 移除指定元素
symmetric_difference() 返回两个集合中不重复的元素集合。
symmetric_difference_update() 移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。
union() 返回两个集合的并集
update() 给集合添加元素

参考:Python3 菜鸟教程

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • (一)、主要内容 1.1、列表 1.2、元祖 1.3、字典 1.4、集合列表 、字典、元祖、集合 (二)、列表 2...
    IIronMan阅读 8,910评论 0 7
  • 集合类型 Swift提供了三种主要的集合类型,称为数组,集合和字典,用于存储值的集合。数组是有序的值集合。集合是唯...
    Fuuqiu阅读 4,162评论 0 0
  • 前言 3月27号苹果发布了Swift3.1,官方教程也更新到了3.1,查看更新记录发现更新的内容对之前的文章并没有...
    BoomLee阅读 8,326评论 0 4
  • 1.打动力表达 如果你需要短时间内获得对方的注意力,那你需要先抛出一个,可以让对方大吃一惊,瞠目结舌或十分好奇的观...
    一一慢知阅读 1,170评论 0 0
  • 为了缓解初三学生的升学压力,提高他们的心理健康水平,2018年11月27日由滁州市未成年人心理健康教育中心、南谯区...
    风雨下的漫行者阅读 2,953评论 0 0