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. 泛微 e-cology OA 前台SQL注入

    poc https://github.com/AdministratorGithub/e-cology-OA-SQL 用法:python elog_sql.py http://target 不存在返回 ...

  2. 拨号vps,拨号vps是什么意思干什么用的,如何使用拨号vps

    首先,拨号vps是动态IP的VPS.vps虚拟服务器.拨号服务器.有些业务,如刷单.投票等操作对ip地址有限制,不能过多的使用.而拨号VPS通过拨号上网,每拨号一次号,就变一次IP,完成ip地址的动态 ...

  3. Rocket - diplomacy - AddressSet

    https://mp.weixin.qq.com/s/ZsEVt1GslL7ufJdJlgpfNQ   介绍AddressSet的实现.   ​​   1. 基本定义   ​​ 使用base/mask ...

  4. 看不见远程新建git分支

    再网页上新建了一个git分支.然后在本地跑git branch -r(查看远程分支)/ git branch -a(查看所有分支)两个命令,都没有看到新建的那个分支.这是为啥呢??? 原因是因为:gi ...

  5. Java实现 LeetCode 336 回文对

    336. 回文对 给定一组唯一的单词, 找出所有不同 的索引对(i, j),使得列表中的两个单词, words[i] + words[j] ,可拼接成回文串. 示例 1: 输入: ["abc ...

  6. Java实现 蓝桥杯VIP 算法训练 Car的旅行路线

    大家可以看一下这个,蓝桥杯官网的这道题是有问题的 Car的旅行路线 算法训练 Car的旅行路线 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 查看参考代码 问题描述 又到暑假 ...

  7. Java实现 洛谷 P1023 税收与补贴问题

    import java.util.Scanner; public class Main { public static void main(String[] args){ Scanner in = n ...

  8. Java实现交替字符串

    1 问题描述 输入三个字符串s1.s2和s3,判断第三个字符串s3是否由前两个字符串s1和s2交错而成且不改变s1和s2中各个字符原有的相对顺序. 2 解决方案 此处采用动态规划法,可以较大的提高时间 ...

  9. Linux帮助命令man详解

    命令man详解 命令man,可以获得命令(使用whatis命令可以得到一个命令的简短介绍,可以使用:命令 --help 来获得命令的选项说明)或配置文件的帮助信息(可以使用apropos命令仅查看配置 ...

  10. BFART算法

    参考:https://zhuanlan.zhihu.com/p/31498036 https://www.jianshu.com/p/83bb10ad1d32