python集合类型是一种具体的数据类型_Python3基础语法之集合类型
set也是一种组合数据类型,支持成员关系操作(in)、对象大小计算操作符(len()),并且是iterable。集合数据类型至少提供一个set.isdisjoin()方法,支持比较,也支持为逻辑操作(在集合用于联合、交叉等上下文中使用)。只有可哈希运算的对象可以添加到集合中,可哈希运算的对象包含一个__hash__()特殊方法,其返回值在某个对象的整个生命周期内都是相同的,并且可以使用__eq()__特殊方法进行相等性比较。
所有内置的固定数据类型(比如float、frozenset、int、str、tuple)都是可哈希运算的,都可以添加到集合中。内置的可变数据类型(比如dict、list、set)都不是可哈希运算的,因为其哈希值会随着包含项数的变化而变化。
操作符==与!=都是逐项比较(对嵌套项,比如集合内的元组或固定集合,则递归比较)其他比较操作符则进行子集比较火超集比较。
可变的set类型 {}
集合中的项是无序的,没有索引位置的概念,不能分片或按步距分片。set数据类型可以作为函数进行调用,不带参数进行调用时将返回一个空集合;带一个set参数时返回该参数的浅拷贝;对任意其他参数,则尝试将给定的对象转换为集合。空集合必须使用set()创建,而不能使用{}来创建。
set(“apple”)、set(“aple”)和{‘e’,‘p’,‘a’,‘l’}产生的三个集合都是一样的。集合常用语删除重复的数据项。比如,x是一个字符串列表,在执行x=list(set(x))后,x中的每个字符串都将是独一无二的,存放顺序也是任意的。集合支持内置的len函数,也支持使用in与not in进行快速成员关系测试。
举例,从文件列表中删除makefile文件
集合内涵
除了调用set()创建集合,或使用集合字面值创建集合外,可以使用集合内涵创建集合。
举例:html = {x for x in files if x.lower().endswitch((".htm",".html"))} 集合内涵中使用的iterable本身也可以是集合内涵(或任何其他类型的内核)
tem = set() for x in files if x.lower().endswith((".htm",".html")) tem.add(x)
固定的frozenset类型
固定集合是指一旦创建旧不能改变的集合,固定集合只能使用frozenset数据类型函数进行创建,不带参数调用时,frozenset(0将返回一个空的固定集合,带一个frozenset参数时,将返回该参数的浅拷贝,对任何其他类型的参数,都尝试将给定的对象转换为一个frozenset。该函数只能接受一个参数。
如果将二元运算符应用于集合与固定集合,那么产生结果的数据类型与左边操作数的数据类型一致。因此,如果f是一个固定集合,s是一个集合,那么f&s将产生一个固定集合,s&f则产生一个集合。在使用与!=等操作符时,操作数的顺序无关紧要,如果两个集合包含相同的项,那么fs结果为True。
本文地址:https://blog.csdn.net/asmartkiller/article/details/108237831
希望与广大网友互动??
点此进行留言吧!
python集合类型是一种具体的数据类型_Python3基础语法之集合类型相关推荐
- python变量类型-【干货】Python基础语法之变量类型
原标题:[干货]Python基础语法之变量类型 还没关注? 01 Python编码 Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错. 解决 ...
- [Python从零到壹] 五.网络爬虫之BeautifulSoup基础语法万字详解
欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...
- Python基础教程(二):基础语法、变量类型
Python 基础语法 Python语言与Perl,C和Java等语言有许多相似之处.但是,也存在一些差异. 在本章中我们将来学习Python的基础语法,让你快速学会Python编程. 第一个Pyth ...
- Python基础入门_2基础语法和变量类型
Python 基础入门系列第二篇,上一篇简单介绍了为什么用 Python,以及安装和配置环境. 这一篇将先介绍基础的语法,包括标识符,即变量名字,然后 Python 特色的缩进规则,注释.保留字等等, ...
- 从列表中切片最佳英雄组合,我的选择是亚索和李青——补充python基础语法有关数字类型和列表的知识
本文继续补充个人对python基础语法的理解,这里主要讲数字类型和列表~ 目前还不算初级程序员把,但是一洗头就掉头发,现在都不敢洗头了~ 数字类型 python中的数字类型:int(整型).float ...
- python入门之函数结构函数的参数_python3基础之函数参数类型
函数的参数是函数内部与外部交流的纽带,上一篇文章我们使用了最简单的参数形式(就一个参数).接下来测试一下多个参数的情况是怎样的? 1.测试1 例子中使用了两个参数p1和p2, 函数的功能就是打印出p1 ...
- python中使用什么表示代码块、不需要使用大括号_Python3 基础语法
Python3 基础语法 阅读 (129) | 发布于 2020-05-11 18:12:32 编码 # -*- coding: utf-8 -*- 这是代码的编码方式.不是程序要处理的数据的编码方式 ...
- 返回值类型与函数类型不匹配_golang基础语法,定义函数类型 为已存在的数据类型起别名...
简介 在 GO 语言中还有另外一种定义使用函数的方式,就是函数类型,所谓的函数类型就是将函数作为一种类型可以用来定义变量,这种用法类似于前面我们讲过的 int ,float64,string 等类型, ...
- C语言学习笔记01:C语言基础语法_变量类型_类型转换
文章目录 C语言第一天课程笔记 1. 内容安排 2. 课堂笔记 2.1 计算机硬件 2.2 计算机软件 2.3 编程语言和编译器 2.4 编程语言发展 2.5 C语言标准 2.6 C语言学习理由 2. ...
最新文章
- AM335x(TQ335x)学习笔记——使用dtb方式启动内核
- WINCE对USB HOST供电的控制
- 35岁前务必成功的12级跳
- 多线程(二)线程控制
- 每日一笑 | 实名举报校长拿两份工资!
- jpa 实体映射视图_JPA教程:实体映射-第3部分
- 浙江大学PAT上机题解析之1008. 数组元素循环右移问题 (20)
- 笨方法“学习python笔记之函数
- tesseract-orc 合并识别结果
- linux mint 18安装中文,无法在Linux Mint 18.1“Serena”下安装pyFFTW
- baacloud无法连接到_加入 Beta 版“Baacloud” - TestFlight - Apple
- Linux系统tomcat修改端口
- 麒麟子带你快速进入Cocos Creator的3D世界
- jpress连接数据库mysql_通过Tomcat jpress连接不到数据库
- 如何打造自己有创意的平面设计灵魂作品
- “华为云,有技术”,并不只是一句口号而已
- Rtabmap 视觉建图与导航 Ubuntu 18.04 Kobuki
- 递归算法和文件队列算法----实现多级文件夹的遍历,删除和复制操作
- 嵌入式跑马灯实验报告linux,ARM嵌入式跑马灯设计实验报告.doc
- 一键安装google服务框架(更新最新版google市场)
热门文章
- oracle数据库如何写翻页_oracle数据库如何写翻页
- laravel mysql 锁表_Laravel中MySQL的乐观锁与悲观锁
- 2017年计算机三级网络技术试题,2017年计算机三级网络技术考前试题及答案(8)
- java-JSON: Expected value at 1:0 错误
- linux中改变文件大小,Linux 改变文件大小的方法
- java线程代码实现_Java 实现线程的2种方法的具体代码实例
- linux共享磁盘给指定ip,linux想挂载通过ipsan协议推送上来的磁盘,两个ip共分配了21个未分区的盘,...
- java填充二维数组_Java用Arrays.fill()初始化二维数组的实现
- 为什么Vue不能观察到数组length的变化?
- css定位position