python(14)--集合

news2024/11/28 12:18:33

前言

本篇文章学习的是 python 中集合的基础知识。

集合元素的内容是不可变的,常见的元素有整数、浮点数、字符串、元组等。至于可变内容列表、字典、集合等不可以是集合元素。虽然集合不可以是集合的元素,但是集合本身是可变的,可以去增加或删除集合的元素。

正文 

集合可以使用“{ }”或“set()”函数建立集合。 

1.建立集合 

使用 {} 建立集合一下试试:

data={'d',1,"球球",'d',(1,2,3),1.23}
print(data)
print("数据类型:",type(data))

集合的特色是元素唯一,所以俩个“d”,舍去一个。

使用set()函数建立集合: 

data=set()
print(data)
print("数据类型:",type(data))
dataa=set('hello world')
print(dataa)

不可以这么写哦:data=set('a','s','fe')

set()函数与列表,元组的结合: 

data=set(['a','s','fe'])
print(data)
tuplea=('w','wde','wdc')
dataa=set(tuplea)
print(dataa)

列表转化为集合:x=set(列表名字)

集合转化为列表:y=list(x)

2.集合基础操作 

a.交集(intersection)

python中有一个交集符号了:&,另外还有一个函数intersectin()可以执行此操作。

实例: 

A={1,3,2,4,5,6}
B={5,6,4,7,9,3}
AB=A&B
print("A&B的交集是:",AB)
AB=A.intersection(B)
print("A.intersection交集B是:",AB)

b.并集(union)

在python中的并集符号是”|“,此外还有union()函数可以完成此操作。

实例: 

A={1,3,2,4,5,6}
B={5,6,4,7,9,3}
AB=A|B
print("A|B的交集是:",AB)
AB=A.union(B)
print("A.union并集B是:",AB)

c.差集(difference)

在python中的并集符号是”-“,此外还有difference()函数可以完成此操作。

实例:

A={1,3,2,4,5,6}
B={5,6,4,7,9,3}
AB=A-B
print("差集A-B集是:",AB)
AB=A.difference(B)
print("使用difference函数:",AB)

d.对称差集(symmetric_difference())

在python中的并集符号是”^“,此外还有symmetric_difference()函数可以完成此操作。

A={1,3,2,4,5,6}
B={5,6,4,7,9,3}
AB=A^B
print("对称差集A^B集是:",AB)
AB=A.symmetric_difference(B)
print("使用symmetric_difference函数:",AB)

e.适用集合的方法函数

add():加一个元素到集合

 

clear():删除集合所有元素

 

copy():浅复制( shallow copy )方式复制集合

 

sorted():对集合进行排序,返回的是列表 [1, 2, 3, 4, 5, 6]

min():最小值

max():最大值

sum():求总和

len():元素数量

frozenset():冻结集合,不可变集合,定住了。

union():求两个集合的并集

difference):A-B,求差集

difference_update():删除集合内与另一集合重复的元素

discard():如果是集合成员则删除

intersection():求两个集合的交集

instersection_update():可以使用交集更新集合内容

isdisjoint():如果2个集合没有交集返回 True 

issubset():如果另一个集合包含这个集合返回 True 

isupperset():如果这个集合包含另一个集合返回 True 

pop():传回所删除的元素,如果是空集合返回 False 

remove():删除指定元素,如果此元素不存在,程序将返回 KeyError 

symmetric_difference():求两个表的对称差集

symmetric_difference_update():使用对称差集更新集合内容

update():使用并集更新集合内容

参考资料

《python王者归来》 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/331195.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

代码随想录算法训练营第六十四天_第十章_单调栈 | 84. 柱状图中最大的矩形

LeetCode 84. 柱状图中最大的矩形 给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。求在该柱状图中,能够勾勒出来的 矩形的最大面积。 视频讲解文章讲解https://programmercarl.com/0084.%E6%9F%B1%E7%8A%…

【MyBatis】| MyBatis的缓存

目录 一:MyBatis的缓存 1. ⼀级缓存 2. ⼆级缓存 3. MyBatis集成第三方缓存EhCache(了解) 一:MyBatis的缓存 (1)缓存(cache):提前把数据存放到缓存当中,下一次使用的时候&#x…

谷歌浏览器无法自动更新怎么办

越来越多的小伙伴选择使用谷歌浏览器,近期有小伙伴发现谷歌浏览器突然无法自动升级更新了,这是怎么回事,遇到这种问题应该怎么解决呢,下面小编就给大家详细介绍一下谷歌浏览器无法自动更新的解决方法,大家感兴趣的话就…

「ChatGPT」一夜之间“火爆出圈“【杞人忧天 or 未雨绸缪】

💂作者简介: THUNDER王,一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读,同时任汉硕云(广东)科技有限公司ABAP开发顾问。在学习工作中,我通常使用偏后…

C语言-程序环境和预处理(14.1)

目录 1. 程序的翻译环境和执行环境 2. 详解编译链接 2.1 翻译环境 2.2 编译本身也分为几个阶段 2.2.1 预编译(预处理) 2.2.2 编译 2.2.3 汇编 2.2.4 链接 2.3 运行环境 写在最后: 1. 程序的翻译环境和执行环境 翻译环境&#xff1…

云借阅图书管理系统的测试项目实践

一、项目启动,介入了解需求二、需求分析三、制定测试方案(计划 策略)四、测试执行流程五、编写测试用例六、测试执行6.1 环境搭建6.2 准备工作6.3 执行6.4 缺陷管理七、输出测试报告八、版本发布九、项目总结一、项目启动,介入了…

CV【5】:Layer normalization

系列文章目录 Normalization 系列方法(一):CV【4】:Batch normalization Normalization 系列方法(二):CV【5】:Layer normalization 文章目录系列文章目录前言2. Layer normalizati…

【C++】多态详解

声明: 本节课件中的代码及解释都是在vs2013下的x86程序中,涉及的指针都是4bytes。如果要其他平台下,部分代码需要改动。比如:如果是x64程序,则需要考虑指针是8bytes问题等等 文章目录多态的概念多态的定义及实现多态的…

Javaweb之Http协议andTomcatandServelt的内容~

JavaWeb技术栈: B/S架构;Browser/server:浏览器/服务器架构模式,它的特点是,客户端只需要浏览器,应用程序的逻辑和数据都存储在服务器端,浏览器只需要请求服务器,获取Web资源,服务器把Web资源发…

2023全球市场份额排名前五的浏览器,国产的为何没上榜

数据研究机构statcounter发布了PC端浏览器在2023年1月份的最新数据统计。Chrome浏览器凭借66.39%的全球份额稳居第一,Edge第二,Safari第三,Firefox第四,Opera第五。不难看出,在浏览器市场全球占有率排名前5中&#xff…

LeetCode 刷题系列 -- 304. 二维区域和检索 - 矩阵不可变

给定一个二维矩阵 matrix,以下类型的多个请求:计算其子矩形范围内元素的总和,该子矩阵的 左上角 为 (row1, col1) ,右下角 为 (row2, col2) 。实现 NumMatrix 类:NumMatrix(int[][] matrix) 给定整数矩阵 matrix 进行初…

我去,竟可直接用命令行操作ChatGPT

ChatGPT 确实杀疯了,已经有 1亿 月活用户了,毕竟它真的有智能的样子。 我前些年还开发过智能客服系统,要是早点遇到 ChatGPT,估计可以省了不少事。 我想接下来有许多业务场景都会使用到它,比如教学,内容创…

OpenCV-PyQT项目实战(5)项目案例01图像模糊

欢迎关注『OpenCV-PyQT项目实战 Youcans』系列,持续更新中 OpenCV-PyQT项目实战(1)安装与环境配置 OpenCV-PyQT项目实战(2)QtDesigner 和 PyUIC 快速入门 OpenCV-PyQT项目实战(3)信号与槽机制 …

毫米波雷达人体存在感应营造更智能的生活

毫米波雷达人体存在感应的工作原理基于多普勒效应,精准度高、稳定性强,其可以穿透非金属物质,比如薄木板、衣服、塑料等物质。 科技改变生活,营造更智能化的生活,最重要的是能够对人体存在进行精准检测,人体…

Git多人协同远程开发

1. 李四(项目负责人)操作步骤 在github中创建远程版本库testgit将基础代码上传⾄testgit远程库远程库中基于main分⽀创建dev分⽀将 githubleaflife/testgit 共享给组员李四继续在基础代码上添加⾃⼰负责的模块内容 2. 张三、王五(组员&…

【树和二叉树】数据结构二叉树和树的概念认识

前言:在之前,我们已经把栈和队列的相关概念以及实现的方法进行了学习,今天我们将认识一个新的知识“树”!!! 目录1.树概念及结构1.1树的概念1.2树的结构1.3树的相关概念1.4 树的表示1.5 树在实际中的运用&a…

SpringBoot:拦截器,过滤器,打包与运行

目录 一、拦截器 1、创建实现类实现HandlerInterceptor 接口 2、注册拦截器对象 二、过滤器 拦截器与过滤器区别 三、打包运行windows版(jar包,war包) 1、打包为jar包 2、打包为 war包 一、拦截器 拦截器(Interceptor )是一种动态拦截…

二叉搜索树——BinarySearchTree

致前行的人: 要努力,但不要着急,繁花锦簇,硕果累累,都需要过程! 目录 1.二叉搜索树 1.1二叉搜索树概念 1.2二叉搜索树的操作 1.3二叉搜索树的实现 2.4二叉搜索树的应用 2.5二叉搜索树的性能分析 2.二…

不用U盘 重装系统(别再浪费钱去电脑城装系统了)

不用U盘 重装系统(别再浪费钱去电脑城装系统了) 首先打开浏览器,搜索MSDN回车,选择第一个网站 点击操作系统 往下拉找到win10专业版 选择(business editions)和 (x64) 打开迅雷,点击新建&a…

高德地图开发实战案例:使用Loca数据源展示海量点标注(海量点、自定义分类图标、聚合、信息提示、3D控件)

系列文章目录 高德地图开发实战案例:弧线连接线标注高德地图开发智慧社区网格化数据格式产生的无法单击事件的解决方案高德地图进阶开发实战案例(1):webAPI坐标转换和jsAPI批量转换高德地图进阶开发实战案例(2):电子围栏(多边形的绘制)的展示高德地图进…