今天继续给大家介绍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集合类型详解(一)——集合定义与集合操作符相关推荐

  1. python变量类型-Python 变量类型详解

    变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据类型,这些变量可以存储整 ...

  2. Python元组类型详解

    今天继续给大家介绍Python相关知识,本文主要内容是Python元组类型定义.操作及应用. 一.元组类型定义 在Python中,元组类型是一种序列类型的一种,并且一旦创建,就不能够被修改. 元组的创 ...

  3. Dart学习笔记六:集合类型详解

    目录 前言 List Set Map 集合的遍历 forEach map where any every 前言 Dart的集合类型使用感觉跟ES6中的集合差不多,这里整理一下Dart集合的常用属性和方 ...

  4. python序列类型-Python内置序列类型之集合类型详解

    1.集合概念 具有某种特定性质的事物的总体,集合里的东西叫作元素.Python中,集合(set)是一个无序不重复元素的序列. 2.集合的创建 可以使用大括号 { } 或者 set() 函数创建集合,注 ...

  5. 【python 笔记】集合类型详解

    目录 集合: 创建集合 集合的基本操作 集合的内建函数和方法 面向可变集合的内建函数 集合: 无序不重复的元素的组合 利用集合可以删除列表中的重复项(set()唱用作去重操作) 分类:可变集合(set ...

  6. 2.13 集合类型详解

    集合类型 这里的集合同数学意义上的集合,符合数学集合的特性,具有无序性.确定性和互异性. 集合的特点: 1.集合元素不可更改,不能够是可变的数据类型. 2.集合用大括号来表示,,元素之间用逗号分隔. ...

  7. redis的数据结构||1) 字符串类型2) 哈希类型3) 列表类型4) 集合类型 5) 有序集合类型详解

    2. 下载安装     1. 官网:https://redis.io     2. 中文网:http://www.redis.net.cn/     3. 解压直接可以使用:         * re ...

  8. oracle集合类型详解

    1.集合类型 1.1关联数组 1.2嵌套表 1.3 可变长的数组 2.声明集合类型 2.1声明关联数组 2.2声明嵌套表 2.3声明VARRAY 3.集合变量的声明和初始化 3.1集合变量的声明 3. ...

  9. 对Python参数类型详解以及学习中遇到的坑

    由于之前遇到过几次有关于参数类型的坑,以及经常容易把一些参数类型搞混淆,现在做一下有关参数类型的总结记录以及对之前踩坑经历的分析. 参数类型 首先我们列举一下有关于Python的参数类型,以及实际上的 ...

最新文章

  1. Linux网络那点事(CentOS、Ubuntu、Kali)
  2. mysql 导出gbk_把mysql 中的字符gb2312 改为gbk的方法
  3. 2021高考萧山二中成绩查询,萧山中学2018高考成绩
  4. npm install --save和npm install --save-dev的区别
  5. 原生JS实现addClass,removeClass,toggleClass
  6. 基于webpack的PC端和mobile端开发以及生产环境的搭建
  7. Springboot整合缓存
  8. 【Python】Jupyter Notebook 配置路径
  9. 阿里与网易考拉收购案谈崩?后者股价下跌5.01%
  10. python 命名管道_Linux 下 Python 读取命名管道的疑惑
  11. C# 数组转换为DataTable 的三个方法
  12. 面试感悟----一名3年工作经验的程序员应该具备的技能--读后感
  13. android GPS开发
  14. python如何制作exe文件_Python制作exe文件简单流程
  15. edge便捷截取长图
  16. 坚果pro2官方rom_坚果pro2线刷包_坚果pro2刷机包_坚果pro2固件包_坚果pro2救砖包 - 线刷宝ROM中心...
  17. POJ - Art Gallery(半平面交)
  18. 网路新年贺词_文伟_新浪博客
  19. [ArcGIS] 空间分析(八) 水文分析
  20. confluence 制作流程图_超好用的流程图绘图工具你还没get吗?

热门文章

  1. “数字聚变 驱动智造” 网络研讨会期待您的参与
  2. MSN Messenger 7.0测试版公开推出 已经可以下载
  3. VB编程:VB支持XP256色的ico图标工具ArtIcons Pro附序列号-60
  4. 【ARM微型电脑/IoT设备/嵌入式】Linux Ubuntu 树莓派 Jetson nano设置PTP时间同步
  5. C++多线程-生产者与消费者模型
  6. 【Python习题】房贷计算器
  7. spring boot实现txt下载
  8. Git代码版本管理命令和团队协作规范---实践版
  9. CSP考试笔记:C++篇(第一章:C++基础语法)(牛客网学习)
  10. 疫情肆虐 三大学习机对比评测 助你在家预习