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. OI 做题的常见错误

    会引起 Compile Error 的错误 由于这类错误过于简单,相信是个正常人都会修,故略写. int main() 写为 int mian() . 写完 struct 或 class 忘记写分号. ...

  2. SpringCloud Netflix (六):Config 配置中心

    ------------恢复内容开始------------ SpringCloud Config 配置中心 Config 配置中心 Spring Cloud Config为分布式系统中的外部化配置提 ...

  3. Chisel3 - bind - Data

    https://mp.weixin.qq.com/s/ENJVkz88sGgyODRNCu9jhQ   介绍Data类中的binding的定义和用法.   Binding stores informa ...

  4. 【Hadoop】hdfs,剖析文件上传

    文件上传原理图 剖析文件写入 1.客户端(client)通过对DistributedFileSystem对象调用create()来新建文件: FSDataOutputStream outputStre ...

  5. Java实现 LeetCode 792 自定义字符串排序(暴力)

    792. 匹配子序列的单词数 给定字符串 S 和单词字典 words, 求 words[i] 中是 S 的子序列的单词个数. 示例: 输入: S = "abcde" words = ...

  6. Java实现 蓝桥杯VIP 算法训练 链表数据求和操作

    算法训练 9-7链表数据求和操作 时间限制:1.0s 内存限制:512.0MB 读入10个复数,建立对应链表,然后求所有复数的和. 样例输入 1 2 1 3 4 5 2 3 3 1 2 1 4 2 2 ...

  7. java实现不连续处断开

    不连续处断开 下列代码运行结果为: 12345 23456 89 23456789 即把一个串从数字不连续的位置断开.试完善之. String s = "123452345689234567 ...

  8. Java实现第十届蓝桥杯矩形切割

    试题 B: 矩形切割 本题总分:5 分 [问题描述] 小明有一些矩形的材料,他要从这些矩形材料中切割出一些正方形. 当他面对一块矩形材料时,他总是从中间切割一刀,切出一块最大的正方 形,剩下一块矩形, ...

  9. pi-star 升级固件命令

    单天线热点: sudo pistar-mmdvmhshatflash hs_hat 双天线热点: sudo pistar-mmdvmhshatflash hs_dual_hat 命令: wget ht ...

  10. 通过SecureCRT向远程Linux主机上传和下载文件

    有时候直接在Linux服务器上通过 wget 或 curl 工具下截比较大的网络文件时会比较慢,这时我们通常会改用在Windows平台通过迅雷等更加现代化的下载功具下好目标文件(迅雷开会员才能更高速的 ...