Python3中的集合类型主要有两种

  set 可变集合

    可添加和删除元素,它是不可哈希的,因此set对象不能用作字典的键或另一个元素的集合

  forzenset 不可变集合

    正好与set相反,其内容创建后不能更改,它是不可改变的集合,是可哈希的

  注:

    1.set集合是一组无序的且不可重复的元素的集合,访问速度较快

    2.set的构造参数需要一个序列对象,这个序列可以是可变类型,但序列中的元素必须是不可变类型(即可哈希的)

    3.集合支持类似其他容器的len(set)、for x in set,但不支持索引、切片或其他类似序列的行为

相关内置函数

  len(set)

    返回集合中元素的个数

set、forzenset 集合对象常用方法

  s.isdisjoint(other_set)

    如果集合s中的元素与集合other_set中的任何一个元素都不同,即两集合不相交(交集为空),则返回True,否则返回False

  s.issubset(other_set)

  或  s <= other_set

    如果集合s是集合other_set的子集,则返回True,否则返回False

  s < other_set

    如果集合s是集合other_set的真子集,则返回True,否则返回False

  s.supperset(other_set)

  或  s >= other_set

    如果集合s是集合other_set的超集,则返回True,否则返回False

  s > other_set

    如果集合s是集合other_set的真超集,则返回True,否则返回False

  s.union(other_set...)

  或  set | other | ...

    返回一个新集合,集合中会保留s集合与其他集合的并集,即所有集合中不重复的全部元素

  s.intersection(other_set...)

  或  set & other & ...

    返回一个新集合,集合中只会保留s集合与其他所有other_set的交集,即所有集合都有的元素

  s.difference_update(other_set...)

  或  set - other - ...

    返回一个新集合,集合中只会保留其他所有other_set的差集合,即别的集合都没有的元素

  s.symmetric_difference_update(other_set)

  或  set ^ other

    返回一个新集合,集合中只会保留仅存在于其中一个集合(不能两个集合都存在)中的元素

  s.copy()

    返回一个浅拷贝s的新集合

仅set集合对象支持的常用方法

  s.add(elem)

    添加元素到elem到集合s

  s.remove(elem)

    删除集合s中的elem元素,找不到引发异常KeyError

  s.discard(elem)

    类似于remove,但找不到不会引发异常

  s.pop()

    从集合中移除并返回任意元素,如果集合为空,则引发异常KeyError

  s.clear()

    删除集合中所有的元素

  s.update(other_set...)

  或  set |= other | ...

    更新集合s,s中会保留s集合与其他集合的并集,即所有集合中不重复的全部元素

  s.intersection_update(other_set...)

  或  set &= other & ...

    更新集合s,s中只会保留s集合与其他所有other_set的交集,即所有集合都有的元素

  s.difference_update(other_set...)

  或  set -= other | ...

    更新集合s,s中只会保留其他所有other_set的差集合,即别的集合都没有的元素

  s.symmetric_difference_update(other_set)

  或  set ^= other

    更新集合s,s中只会保留仅存在于其中一个集合(不能两个集合都存在)中的元素

Python3-内置类型-集合类型的更多相关文章

  1. Python3内置类型有哪些?

    摘要:Python3目前已经成为主流,和版本2天壤之别,关于Python3的内置类型你了解吗? 本文将专注于解释器支持的内置类型,基于版本3.9.1进行讲解. 内置的主要类型是numerics.seq ...

  2. Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:整型数值类型

    ylbtech-Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:整型数值类型 1.返回顶部 1. 整型数值类型(C# 参考) 2019/10/22 “整型数值类型”是“简单类型”的 ...

  3. Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:值类型的功能

    ylbtech-Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:值类型的功能 1.返回顶部 1. 值类型(C# 参考) 2018/11/26 有两种值类型: 结构 枚举 值类型的主 ...

  4. python内置类型详细解释

    文章编写借鉴于内置类型 - Python 3.7.3 文档,主要用于自己学习和记录 python主要内置类型包括数字.序列.映射.类.实例和异常 有些多项集类是可变的.它们用于添加.移除或重排其成员的 ...

  5. 遇见Python集合类型

    Python目前有两种内置集合类型,set和frozenset. Ⅰ.两者区别 set是可变的,没有哈希值,其内容可以使用add()和remove()这样的方法来改变,所以不能被用作字典的键或其他集合 ...

  6. Python3中内置类型bytes和str用法及byte和string之间各种编码转换,python--列表,元组,字符串互相转换

    Python3中内置类型bytes和str用法及byte和string之间各种编码转换 python--列表,元组,字符串互相转换 列表,元组和字符串python中有三个内建函数:,他们之间的互相转换 ...

  7. day07-列表类型/元组类型/字典类型/集合类型内置方法

    目录 列表类型内置方法 元组类型内置方法 字典类型内置方法 集合类型内置方法 列表类型内置方法 用来存多个元素,[]内用逗号隔开任意数据类型的元素 1. list()强制类型转换 print(list ...

  8. day007 列表类型、元祖类型、 字典类型、 集合类型的内置方法

    目录 列表数据类型的内置方法 作用 定义方式 优先掌握的方法 需要掌握的方法 元祖类型的内置方法 作用 定义方式 优先掌握的方法(参考列表方法) 字典类型的内置方法 作用 定义方式 优先掌握的方法 需 ...

  9. C++学习 之 初识变量和基本类型 之 内置类型

    声明:            本人自学C++, 没有计算机基础,在学习的过程难免会出现理解错误,出现风马牛不相及的现象,甚至有可能会贻笑大方. 如果有幸C++大牛能够扫到本人的博客,诚心希望大牛能给予 ...

随机推荐

  1. 01 . Prometheus简介及安装配置Grafana

    Promethus简介 Prometheus受启发于Google的Brogmon监控系统(相似的Kubernetes是从Google的Brog系统演变而来),从2012年开始由前Google工程师在S ...

  2. Rocket - diplomacy - 模块结构信息

    https://mp.weixin.qq.com/s/cTRxXwWNEeb4-XX_t4bRcg   讨论模块结构信息的来源及使用方式.     ​​   1. diplomacy   diplom ...

  3. undefined和nul

  4. 百度云百度网盘VIP不限速破解版绿色版-实测可用

    百度云百度网盘不限速VIP破解版绿色版-下载地址:https://www.90pan.com/b1548999

  5. Java实现 蓝桥杯 算法训练 大小写转换

    算法训练 大小写转换 时间限制:1.0s 内存限制:512.0MB 提交此题 问题描述 编写一个程序,输入一个字符串(长度不超过20),然后把这个字符串内的每一个字符进行大小写变换,即将大写字母变成小 ...

  6. Java实现蓝桥杯分金币

    分金币 圆桌旁坐着n个人,每人有一定数量的金币,金币总数能被n整除.每个人可以给他左右相邻的人一些金币, 最终使得每个人的金币数目相等.你的任务是求出被转手的金币数量的最小值. 比如,n=4,且4个人 ...

  7. Java实现 蓝桥杯VIP 算法提高 贪吃的大嘴

    算法提高 贪吃的大嘴 时间限制:1.0s 内存限制:256.0MB 问题描述 有一只特别贪吃的大嘴,她很喜欢吃一种小蛋糕,而每一个小蛋糕有一个美味度,而大嘴是很傲娇的,一定要吃美味度和刚好为m的小蛋糕 ...

  8. Mysql(Mariadb)数据库主从

    Mysql主从复制的实现原理图大致如下: MySQL之间数据复制的基础是以二进制日志文件(binary log file)来实现的,一台MySQL数据库一旦启用二进制日志后,其作为master,它数据 ...

  9. MySql轻松入门系列——第二站 使用visual studio 对mysql进行源码级调试

    一:背景 1. 讲故事 上一篇说了mysql的架构图,很多同学反馈说不过瘾,毕竟还是听我讲故事,那这篇就来说一说怎么利用visual studio 对 mysql进行源码级调试,毕竟源码面前,不谈隐私 ...

  10. [Google Guava] 强大的集合工具类:java.util.Collections中未包含的集合工具

    转载的,有问题请联系我 原文链接 译文链接 译者:沈义扬,校对:丁一 尚未完成: Queues, Tables工具类 任何对JDK集合框架有经验的程序员都熟悉和喜欢java.util.Collecti ...