python 之 集合的相关知识

文章目录

      • 1. 创建集合
        • 使用花括号 `{}`
        • 使用 `set()` 函数
      • 2. 集合的特点
      • 3. 集合操作
        • 添加元素
        • 删除元素
      • 4. 集合运算
      • 5. 不可变集合
      • 总结

在这里插入图片描述

在 Python 中,集合(Set)是一种无序且不重复的数据集合。它是由一组唯一元素组成的。下面是关于集合的一些基本知识:

1. 创建集合

使用花括号 {} 或者 set() 函数来创建集合。

使用花括号 {}
my_set = {1, 2, 3, 4, 5}
使用 set() 函数
my_set = set([1, 2, 3, 4, 5])

2. 集合的特点

  • 无序性:集合中的元素是无序的,不会记录元素的插入顺序。
  • 唯一性:集合中的元素是唯一的,重复的元素会被自动去重。

3. 集合操作

添加元素
  • add(): 向集合中添加单个元素。
  • update(): 用于向集合中添加多个元素。
my_set = {1, 2, 3}
my_set.add(4)  # 添加单个元素
my_set.update([5, 6, 7])  # 添加多个元素
删除元素
  • remove(): 删除集合中的指定元素,如果元素不存在会抛出 KeyError 异常。
  • discard(): 删除集合中的指定元素,如果元素不存在不会抛出异常。
  • pop(): 随机删除并返回集合中的一个元素。
my_set = {1, 2, 3, 4, 5}
my_set.remove(4)
my_set.discard(5)
element = my_set.pop()

4. 集合运算

  • union(): 返回两个集合的并集。
  • intersection(): 返回两个集合的交集。
  • difference(): 返回两个集合的差集。
  • symmetric_difference(): 返回两个集合的对称差集。
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}

union_set = set1.union(set2)
intersection_set = set1.intersection(set2)
difference_set = set1.difference(set2)
symmetric_difference_set = set1.symmetric_difference(set2)

5. 不可变集合

Python 中还有一种不可变的集合类型 frozenset,它和集合类似,但是不可更改,一旦创建就无法添加或删除元素。

总结

集合是一种用于存储唯一元素的数据结构,适用于去重、集合运算等场景。了解集合的特点、创建方式和常用操作可以帮助你更好地利用集合来处理数据。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

(后续补充)vue+express、gitee pm2部署轻量服务器

首先 防火墙全部关闭算了 首先 防火墙全部关闭算了 首先 防火墙全部关闭算了 首先 防火墙全部关闭算了 首先 防火墙全部关闭算了 首先 防火墙全部关闭算了 关闭防火墙 systemctl stop firewalld 重新载入防火墙使设置生效 firewall-cmd --reload 后端的 pm2.config.cjs …

【小尘送书-第十一期】编程的基石,开发的核心:《算法秘籍》

大家好,我是小尘,欢迎你的关注!大家可以一起交流学习!欢迎大家在CSDN后台私信我!一起讨论学习,讨论如何找到满意的工作! 👨‍💻博主主页:小尘要自信 &#x1…

IC设计之《集成电路设计宝典》,共423页,可打印,快来领取吧~~~

集成电路(integrated circuit)是一种微型电子器件或部件。采用一定的工艺,把一个电路中所需的晶体管、电阻、电容和电感等元件及布线互连一起,制作在一小块或几小块半导体晶片或介质基片上,然后封装在一个管壳内&#…

Corel VideoStudio 会声会影2024剪辑中间的视频怎么删 剪辑中音乐太长怎么办

我很喜欢视频剪辑软件Corel VideoStudio 会声会影2024,因为它使用起来很有趣。它很容易使用,但仍然给你很多功能和力量。视频剪辑软件Corel VideoStudio 会声会影2023让我与世界分享我的想法!“这个产品的功能非常多,我几乎没有触…

【网络协议】

网络协议 1 网络通讯1.1 防火墙1.2 子网掩码1.3 网关1.4 2 SSH2.1 SSH2.2 SSH12.3 SSH2 3 Telnet4 Telnet/SSL5 NFS6 TFTP7 FTP8 SFTP9 HTTP10 HTTPS11 NAT12 加密 1 网络通讯 1.1 防火墙 所谓“防火墙”,是指一种将内部网和公众访问网(如Internet)分开的方法&…

顶板事故防治vr实景交互体验提高操作人员安全防护技能水平

建筑业在我国各行业中属危险性较大且事故多发的行业,在建筑业“八大伤害”(高处坠落、坍塌、物体打击、触电、起重伤害、机械伤害、火灾爆炸及其他伤害)事故中,高处坠落事故的发生率最高、危险性极大。工地现场培训vr坠落体验利用虚拟现实技术还原各种情…

[yarn]yarn异常

一、运行一下算圆周率的测试代码,看下报错 cd /home/data_warehouse/module/hadoop-3.1.3/share/hadoop/mapreduce hadoop jar hadoop-mapreduce-examples-3.1.3.jar pi 1000 1000 后面2个数字参数的含义: 第1个1000指的是要运行1000次map任务 …

大数据毕业设计选题推荐-超级英雄运营数据监控平台-Hadoop-Spark-Hive

✨作者主页:IT研究室✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Python…

论文阅读:PVT v2: Improved Baselines with Pyramid Vision Transformer

来源:PVTv1 和PVTv2 链接:https://arxiv.org/pdf/2102.12122.pdf 链接:https://arxiv.org/pdf/2106.13797.pdf PVTv2是在PVTv1基础上,所以先介绍PVTv1 Pyramid Vision Transformer: A Versatile Backbone for Dense Prediction…

智能柜+MRO:制造业中的自动售货机

每当谈及企业数字化转型,多数人想到的是人工智能、大数据等高端技术的应用,或是原有业务流程和运营方式的数字化与自动化,实现大幅降本增效等。然而,对于急需在数字时代找到生存之道的企业来说,数字化转型的要求远不止…

技术分享 | Appium 用例录制

下载及安装 下载地址: github.com/appium/appi… 下载对应系统的 Appium 版本,安装完成之后,点击 “Start Server”,就启动了 Appium Server。 在启动成功页面点击右上角的放大镜,进入到创建 Session 页面。配置好…

Vuex状态管理(简单易懂、全网最全)

目录 Vuex是什么? 如何部署 如何使用 state 基础使用 在计算属性属性中使用 使用展开运算符 mutations 基础使用 使用辅助函数(mapMutations)简化 使用常量替代 Mutation 事件类型 getters actions 使用辅助函数(…

Databend 开源周报第 118 期

Databend 是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.cn 。 Whats On In Databend 探索 Databend 本周新进展,遇到更贴近你心意的 Databend 。 MERGE INTO 现已…

SpringCloudAlibaba - 项目完整搭建(Nacos + OpenFeign + Getway + Sentinel)

目录 一、SpringCloudAlibaba 项目完整搭建 1.1、初始化项目 1.1.1、创建工程 1.1.2、配置父工程的 pom.xml 1.1.3、创建子模块 1.2、user 微服务 1.2.1、配置 pom.xml 1.2.2、创建 application.yml 配置文件 1.2.3、创建启动类 1.2.4、测试 1.3、product 微服务 1…

[答疑]老大不是某组织的负责人吗,为什么说“系统的老大”?

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 第五元素 2023-10-23 8:38 像这道题 研发部要添加一名C#程序员,由人力资源部负责出面招人,请问针对这名C#程序员(一个人脑系统)&#…

如何对ppt文件设置修改权限?

PPT文件会应用在会议、演讲、课件等工作生活中,当我们制作好了PPT之后,保护内容防止在演示时出错是很重要的,那么如何将PPT文件设置成禁止修改模式呢?今天分享几个方法给大家。 方法一 将PPT文件直接保存或者另存为一份文件&…

【数据结构】——顺序表(增删查改)

目录 前言: 顺序表: 1、概念及分类 1.1顺序表分类 静态顺序表 动态顺序表 2、接口实现 2.1功能要求 2.2功能实现 💡初始化顺序表 💡销毁顺序表 💡顺序表尾插入 💡检查是否扩容 💡…

php实现钉钉机器人推送消息和图片内容(完整版)

先来看下实现效果: 代码如下: function send_dingtalk_markdown($webhook , $title , $message "", $atMobiles [], $atUserIds []) {$data ["msgtype" > "markdown","markdown" > ["title" > $title,&quo…

ZZ308 物联网应用与服务赛题第H套

2023年全国职业院校技能大赛 中职组 物联网应用与服务 任 务 书 (H卷) 赛位号:______________ 竞赛须知 一、注意事项 1.检查硬件设备、电脑设备是否正常。检查竞赛所需的各项设备、软件和竞赛材料等; 2.竞赛任务中所使用的…

QT实现的一个MVP设计模式demo

最近做qt 项目,发现网上基于MVP设计模式的QT例程很少,这里写一个demo示例可作为参考: 一、简要概述 MVP是由MVC发展而来,总体目的与作用相同。都是为了软件构架有层次之分,使得核心逻辑、界面控制、数据这三者分层清晰明了。减少…