Python集合类型详解(一)——集合定义与集合操作符
今天继续给大家介绍Python相关知识,本文主要内容是Python集合类型定义与集合操作符。
一、集合类型定义
在Python中,集合是一种非常重要的组合数据类型。Python中的集合与数学中的集合非常相似,集合中的数据没有顺序,并且每个元素具有唯一性,不存在相同的元素。
集合用大括号来表示,集合之间的元素用逗号分隔。我们在定义一个集合类型的时候可以使用大括号或者set()函数,但是如果要建立一个空集合,就必须用set()函数。此外,set()函数还具有一个一个变量转换成集合类型的作用。
集合类型定义如下所示:
从上图中,我们可以得到以下结论:
1、集合中的元素是无序的,尽管我们在print()一个集合变量的时候,集合中的元素会有一个顺序,但是这是Python自身对集合中元素的排序,不是真正的顺序。
2、set()函数可以将一个字符串类型转化为集合,(实际上,元组、序列类型也可以,如果是字典,那么会转化字典中的键),并且会自动删除掉其中重复的元素。
在Python中,集合中的元素不可以被更改(但是可以添加新的元素,也可以删除已经在集合中的元素),也不能是可以被更改的数据类型。
因此,我们尝试向集合中定义一个序列,会发现报错,如下所示:
二、集合操作符
为了更加方便操作集合,Python定义了8个基本集合操作符,这8个基本集合操作符及其作用如下所示:
基本集合操作符 | 作用 |
---|---|
A|B | 并操作,返回一个新集合,这个新集合包含集合A和B中的所有元素 |
A-B | 减操作,返回一个新集合,这个新集合包括在集合A但是不在集合B中的所有元素 |
A&B | 减操作,返回一个新集合,这个新集合包括同时在集合A和集合B中的元素 |
A^B | 减操作,返回一个新集合,这个新集合包括集合A和B中不相同的元素 |
A<=B或A<B或A>=B或A>B | 根据集合A中元素是否全部在集合B中,返回True或者False |
此外,类似于其他变量中的增强操作符,Python还定义了4个增强集合操作符,这4个增强集合操作符作用如下所示:
增强集合操作符 | 作用 |
---|---|
A|=B | 对集合A和B进行并操作,并将操作得到的新集合赋值给集合A |
A-=B | 对集合A和B进行减操作,并将操作得到的新集合赋值给集合A |
A&=B | 对集合A和B进行交操作,并将操作得到的新集合赋值给集合A |
A^=B | 对集合A和B进行补操作,并将操作得到的新集合赋值给集合A |
三、集合操作符使用示例
集合操作符使用如下所示:
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
Python集合类型详解(一)——集合定义与集合操作符相关推荐
- python变量类型-Python 变量类型详解
变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据类型,这些变量可以存储整 ...
- Python元组类型详解
今天继续给大家介绍Python相关知识,本文主要内容是Python元组类型定义.操作及应用. 一.元组类型定义 在Python中,元组类型是一种序列类型的一种,并且一旦创建,就不能够被修改. 元组的创 ...
- Dart学习笔记六:集合类型详解
目录 前言 List Set Map 集合的遍历 forEach map where any every 前言 Dart的集合类型使用感觉跟ES6中的集合差不多,这里整理一下Dart集合的常用属性和方 ...
- python序列类型-Python内置序列类型之集合类型详解
1.集合概念 具有某种特定性质的事物的总体,集合里的东西叫作元素.Python中,集合(set)是一个无序不重复元素的序列. 2.集合的创建 可以使用大括号 { } 或者 set() 函数创建集合,注 ...
- 【python 笔记】集合类型详解
目录 集合: 创建集合 集合的基本操作 集合的内建函数和方法 面向可变集合的内建函数 集合: 无序不重复的元素的组合 利用集合可以删除列表中的重复项(set()唱用作去重操作) 分类:可变集合(set ...
- 2.13 集合类型详解
集合类型 这里的集合同数学意义上的集合,符合数学集合的特性,具有无序性.确定性和互异性. 集合的特点: 1.集合元素不可更改,不能够是可变的数据类型. 2.集合用大括号来表示,,元素之间用逗号分隔. ...
- redis的数据结构||1) 字符串类型2) 哈希类型3) 列表类型4) 集合类型 5) 有序集合类型详解
2. 下载安装 1. 官网:https://redis.io 2. 中文网:http://www.redis.net.cn/ 3. 解压直接可以使用: * re ...
- oracle集合类型详解
1.集合类型 1.1关联数组 1.2嵌套表 1.3 可变长的数组 2.声明集合类型 2.1声明关联数组 2.2声明嵌套表 2.3声明VARRAY 3.集合变量的声明和初始化 3.1集合变量的声明 3. ...
- 对Python参数类型详解以及学习中遇到的坑
由于之前遇到过几次有关于参数类型的坑,以及经常容易把一些参数类型搞混淆,现在做一下有关参数类型的总结记录以及对之前踩坑经历的分析. 参数类型 首先我们列举一下有关于Python的参数类型,以及实际上的 ...
最新文章
- Linux网络那点事(CentOS、Ubuntu、Kali)
- mysql 导出gbk_把mysql 中的字符gb2312 改为gbk的方法
- 2021高考萧山二中成绩查询,萧山中学2018高考成绩
- npm install --save和npm install --save-dev的区别
- 原生JS实现addClass,removeClass,toggleClass
- 基于webpack的PC端和mobile端开发以及生产环境的搭建
- Springboot整合缓存
- 【Python】Jupyter Notebook 配置路径
- 阿里与网易考拉收购案谈崩?后者股价下跌5.01%
- python 命名管道_Linux 下 Python 读取命名管道的疑惑
- C# 数组转换为DataTable 的三个方法
- 面试感悟----一名3年工作经验的程序员应该具备的技能--读后感
- android GPS开发
- python如何制作exe文件_Python制作exe文件简单流程
- edge便捷截取长图
- 坚果pro2官方rom_坚果pro2线刷包_坚果pro2刷机包_坚果pro2固件包_坚果pro2救砖包 - 线刷宝ROM中心...
- POJ - Art Gallery(半平面交)
- 网路新年贺词_文伟_新浪博客
- [ArcGIS] 空间分析(八) 水文分析
- confluence 制作流程图_超好用的流程图绘图工具你还没get吗?
热门文章
- “数字聚变 驱动智造” 网络研讨会期待您的参与
- MSN Messenger 7.0测试版公开推出 已经可以下载
- VB编程:VB支持XP256色的ico图标工具ArtIcons Pro附序列号-60
- 【ARM微型电脑/IoT设备/嵌入式】Linux Ubuntu 树莓派 Jetson nano设置PTP时间同步
- C++多线程-生产者与消费者模型
- 【Python习题】房贷计算器
- spring boot实现txt下载
- Git代码版本管理命令和团队协作规范---实践版
- CSP考试笔记:C++篇(第一章:C++基础语法)(牛客网学习)
- 疫情肆虐 三大学习机对比评测 助你在家预习