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. mysql 数据类型笔记

    一. varchar存储规则: 4.0版本以下,varchar(20),指的是20字节,如果存放UTF8汉字时,只能存6个(每个汉字3字节) 5.0版本以上,varchar(20),指的是20字符,无 ...

  2. Xilinx ISE多功能移位寄存器仿真及Basys2实验板实验

    移位寄存器实现Verilog代码: `timescale 1ns / 1ps module add( input clk, input reset, input [1:0] s, input dl, ...

  3. 运用惰性删除和定时删除实现可过期的localStorage缓存

    localStorage简介 使用localStorage可以在浏览器中存储键值对的数据.经常被和localStorage一并提及的是sessionStorage,它们都可以在当浏览器中存储键值对的数 ...

  4. Linux(十) —— 使用 rz 和 sz 命令上传与下载

    以CentOS 7 系统为例,一般上传下载都是使用的第三方工具,但是在操作上并不方便,每次都要找到对应的目录才可以执行上传.下载操作,比较麻烦. 而CentOS为例的 Linux 系统可以通过安装 插 ...

  5. Java实现 蓝桥杯 算法提高 矩阵乘法(暴力)

    试题 算法提高 矩阵乘法 问题描述 小明最近刚刚学习了矩阵乘法,但是他计算的速度太慢,于是他希望你能帮他写一个矩阵乘法的运算器. 输入格式 输入的第一行包含三个正整数N,M,K,表示一个NM的矩阵乘以 ...

  6. Java实现 蓝桥杯VIP 基础练习 FJ的字符串

    问题描述 FJ在沙盘上写了这样一些字符串: A1 = "A" A2 = "ABA" A3 = "ABACABA" A4 = "AB ...

  7. Java实现蓝桥杯VIP算法训练 数组逆序排列

    试题 算法训练 数组逆序排列 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 编写一个程序,读入一组整数(不超过20个),并把它们保存在一个整型数组中.当用户输入0时,表示输入结束. ...

  8. Java实现 蓝桥杯VIP 算法提高 前10名

    算法提高 前10名 时间限制:1.0s 内存限制:256.0MB 问题描述 数据很多,但我们经常只取前几名,比如奥运只取前3名.现在我们有n个数据,请按从大到小的顺序,输出前10个名数据. 输入格式 ...

  9. Java实现台阶问题

    1 问题描述 一个台阶总共有n级,如果一次可以跳1级,也可以跳2级,求总共有多少种跳法. 2 解决方案 2.1 递归法 如果整个台阶只有1级,则显然只有一种跳法.如果台阶有2级,则有两种跳法:一种是分 ...

  10. Linux 用户管理命令-userdel和su

    userdel [选项] 用户名,可以删除用户,常用选项 -r :删除用户的同时删除用户的家目录,一般都要用,例如:userdel -r xbb 新建用户和删除用户的本质也就是修改了 /etc/sha ...