目录

初识集合

集合的含义

集合的作用

集合的使用场景

集合的定义

集合的常用操作

元素的增加

函数add()

元素的删除

函数remove()

函数clear()

函数pop()

集合的遍历

for循环

while循环


初识集合

集合的含义

在pyrhon中,集合是一种内置的数据结构,用于存储无序、唯一的元素。

无序:在集合中的元素没有固定顺序。

唯一:集合中的元素不重复。

集合的作用

去重从列表中移除重复的元素
查找效率高

判断指定元素是否存在

集合运算交集、并集等操作
关系判断判断集合包含关系

集合的使用场景

列表去重、判断元素是否存在、集合运算、判断子集及超集。

集合的定义

由{}包裹的元素组成的序列,且元素可以是不同的数据类型。

语法结构:

集合名 = {元素1,元素2,元素3,......}

#以下都是集合
my_set = {'ele1','ele2','ele3'}
my_set2 = {1,2,3}
my_set3 = {True,True,False}
my_set4 = {'ele1',4,False}

集合的常用操作

清晨,阳光洒落在村庄的青石小路上,你,小小勇者,背起剑与行囊,准备出发完成今日的冒险任务——收集魔晶碎片。据说魔晶碎片分布在森林、湖边和山洞之中,只有集齐五种不同的碎片,才能解锁古代祭坛的大门。

元素的增加

函数add()

功能:向集合中添加一个新元素,如果元素已存在,则不会重复添加,不能添加列表、字典。

语法结构:集合.add(元素)

第一站:森林深处——收集开始

森林中迷雾缭绕,勇者击败了几只树灵,捡到了两枚发着绿光的碎片---翠绿魔晶。你兴奋地拿出背包里的碎片收集袋,却发现无论再怎么捡“翠绿魔晶”,袋子里也只有一块,可能是其中一块魔晶将另一块吸收了;接着,你又从一棵大树下的藤蔓中发现了另一块“幽紫魔晶”:

bag = set() #集合内的元素不重复
bag.add("翠绿魔晶")
bag.add("翠绿魔晶")  # 重复添加也不会重复存在
bag.add("幽紫魔晶")
print(bag)

对代码进行运行测试:

元素的删除

函数remove()

功能:删除集合中的指定元素,若元素不存在,会报错KeyError。

语法结构:集合.remove(元素)

第二站:湖边陷阱——移除错误碎片

湖边,你见一块晶石泛着蓝光,以为是“冰蓝魔晶”,便将其收集起来,但刚准备离开,巡湖的老猎人提醒你:“那不是魔晶,是鱼人的水晶诱饵,带着它会吸引危险。”你连忙取出袋子,小心翼翼地将其移除:

bag = {'幽紫魔晶', '翠绿魔晶'}
bag.add("湖边碎片")
print(f"捡起后背包内的魔晶碎片有{bag}")
bag.remove("湖边碎片")
print(f"扔掉后背包内的魔晶碎片有{bag}")

对代码进行运行测试:

函数clear()

功能:移除集合中所有元素,使集合变为空集合。

语法结构:集合.clear()

第三站:山洞探险——清空重来

你继续前往山洞,却在一场地震中摔了跤,袋子掉进泥水中。碎片沾满污泥、失去了能量。

你叹了口气,只能清空收集袋,准备重新收集。“这次我得更小心了。”你拍拍身上的泥,继续前行。

bag = {'幽紫魔晶', '翠绿魔晶'}
bag.clear()
print(f"摔跤后你手中的魔晶碎片还剩:{bag}")

对代码进行运行测试:

函数pop()

功能:由于集合是无序的,pop()函数会随机删除并返回集合中的某个元素,若集合为空,会报错KeyError。

语法结构:集合.pop()

第四站:魔晶之心——火焰魔晶的试炼

在经历了数次挑战之后,你终于集齐了四块较为常见的魔晶碎片:翠绿魔晶、幽紫魔晶、风之魔晶和光明魔晶。剩下的唯一缺少的碎片便是火焰魔晶,隐藏在烈焰之岛的火焰试炼中。在烈焰岛上,你必须通过重重火焰挑战才能接近魔晶。最后,你面对火焰漩涡中的火焰魔晶,火焰之神告诉他:要想获得火焰魔晶,就必须放弃一块已有的魔晶。你毫不犹豫地选择献祭自己最珍贵的一块魔晶:

bag = {"翠绿魔晶","幽紫魔晶","风之魔晶","光明魔晶"}
print(f'被你献祭的魔晶碎片是:{bag.pop()}')

对代码进行运行测试:

集合的遍历

for循环

第五站:地穴迷宫——整理收集情况

你在地穴中一路奋战,终于又重新收集到了五种魔晶碎片。你点燃火把,开始一个个检查,边走边数,确认每一块魔晶的种类和颜色,以免遗漏。

bag = {"翠绿魔晶","幽紫魔晶","光明魔晶","火焰魔晶","风之魔晶"}
for mojing in bag:print(f"收集到:{mojing}")

对代码进行运行测试:

while循环

第五站:古代祭坛——等待封印解除

最后,你抵达神秘的古代祭坛,将碎片一一放入祭坛的五个凹槽,但祭坛没有立刻反应。你决定重新检查一下每个碎片的位置,确保没有错漏,于是开始逐个核对:

bag = {"翠绿魔晶","幽紫魔晶","光明魔晶","火焰魔晶","风之魔晶"}
bag_list = list(bag)
index = 0
while index < len(bag_list):print(f"第{index + 1}块碎片是:{bag_list[index]}")index += 1

对代码进行运行测试:

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

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何将普通HTTP API接口改造为MCP服务器

在现代微服务架构中&#xff0c;MCP&#xff08;Mesh Configuration Protocol&#xff09; 作为高效配置分发协议&#xff0c;正逐渐替代传统HTTP API。本文将手把手教你如何将普通HTTP API升级为高性能MCP服务器。 为什么需要MCP&#xff1f; 传统HTTP API在配置分发场景存在…

数据结构第8问:什么是树?

树 【本节仅描述树的定义、术语以及相关性质】 定义 树是由若干个结点组成的有限集合。具有如下特征&#xff1a; 有且仅有一个根结点&#xff1b;除根结点外&#xff0c;每个其它结点有且仅有一个直接的父结点&#xff1b;除根结点外&#xff0c;每个结点可以有零个或者多个子…

PyTorch RNN 名字分类器

PyTorch RNN 名字分类器详解 使用PyTorch实现的字符级RNN&#xff08;循环神经网络&#xff09;项目&#xff0c;用于根据人名预测其所属的语言/国家。该模型通过学习不同语言名字的字符模式&#xff0c;够识别名字的语言起源。 环境设置 import torch import string import un…

面向对象之类方法,成员变量和局部变量

1.类的方法必须包含几个部分&#xff1f;2.成员变量和局部变量类的方法必须包含哪几个部分&#xff1f;.方法名&#xff1a;用于标识方法的名称&#xff0c;遵循标识符命名规则&#xff0c;通常采用驼峰命名法。返回值类型&#xff1a;指定方法返回的数据类型。如果方法不返回任…

古法笔记 | 通过查表进行ASCII字符编码转换

ASCII字符集是比较早期的一种字符编码&#xff0c;只能表示英文字符&#xff0c;最多能表示128个字符。 字符集规定了每个字符和二进制数之间的对应关系&#xff0c;可以通过查表完成二进制数到字符的转换ASCII字符占用的存储空间是定长的1字节 ASCII字符的官方码点表见下图&…

Linux C实现单生产者多消费者环形缓冲区

使用C11里的原子变量实现&#xff0c;没有用互斥锁&#xff0c;效率更高。ring_buffer.h:/*** file ring_buffer.h* author tl* brief 单生产者多消费者环形缓冲区&#xff0c;每条数据被所有消费者读后才释放。读线程安全&#xff0c;写仅单线程。* version* date 2025-08-06*…

复杂场景识别率↑31%!陌讯多模态融合算法在智慧环卫的实战解析

摘要&#xff1a;针对边缘计算优化的垃圾堆放识别场景&#xff0c;本文解析了基于动态决策机制的视觉算法如何提升复杂环境的鲁棒性。实测数据显示在遮挡/光照干扰下&#xff0c;mAP0.5较基线提升28.3%&#xff0c;误报率降低至行业1/5水平。一、行业痛点&#xff1a;智慧环卫的…

MyBatis-Plus Service 接口:如何在 MyBatis-Plus 中实现业务逻辑层??

全文目录&#xff1a;开篇语前言1. MyBatis-Plus 的 IService 接口1.1 基本使用示例&#xff1a;创建实体类 User 和 UserService1.2 创建 IService 接口1.3 创建 ServiceImpl 类1.4 典型的数据库操作方法1.4.1 save()&#xff1a;保存数据1.4.2 remove()&#xff1a;删除数据1…

[激光原理与应用-168]:光源 - 常见光源的分类、特性及应用场景的详细解析,涵盖技术原理、优缺点及典型应用领域

一、半导体光源1. LED光源&#xff08;发光二极管&#xff09;原理&#xff1a;通过半导体PN结的电子-空穴复合发光&#xff0c;波长由材料带隙决定&#xff08;如GaN发蓝光、AlGaInP发红光&#xff09;。特性&#xff1a;优点&#xff1a;寿命长&#xff08;>5万小时&#…

Metronic v.7.1.7企业级Web应用前端框架全攻略

本文还有配套的精品资源&#xff0c;点击获取 简介&#xff1a;Metronic是一款专注于构建响应式、高性能企业级Web应用的前端开发框架。最新版本v.7.1.7引入了多种功能和优化&#xff0c;以增强开发效率和用户体验。详细介绍了其核心特性&#xff0c;包括响应式设计、多种模…

鸿蒙开发--Notification Kit(用户通知服务)

通知是手机系统中很重要的信息展示方式&#xff0c;通知不仅可以展示文字&#xff0c;也可以展示图片&#xff0c;甚至可以将组件加到通知中&#xff0c;只要用户不清空&#xff0c;通知的信息可以永久保留在状态栏上通知的介绍 通知 Notification通知&#xff0c;即在一个应用…

鸿蒙 - 分享功能

文章目录一、背景二、app发起分享1. 通过分享面板进行分享2. 使用其他应用打开二、处理分享的内容1. module.json5 配置可接收分享2. 解析分享的数据一、背景 在App开发中&#xff0c;分享是常用功能&#xff0c;这里介绍鸿蒙开发中&#xff0c;其他应用分享到自己的app中&…

【Agent 系统设计】基于大语言模型的智能Agent系统

一篇阿里博文引发的思考和探索。基于大语言模型的智能Agent系统 1. 系统核心思想 核心思想是构建一个以大语言模型&#xff08;LLM&#xff09;为“大脑”的智能代理&#xff08;Agent&#xff09;&#xff0c;旨在解决将人类的自然语言指令高效、准确地转化为机器可执行的自动…

企业级Web框架性能对决:Spring Boot、Django、Node.js与ASP.NET深度测评

企业级Web应用的开发效率与运行性能直接关系到业务的成败。本文通过构建标准化的待办事项&#xff08;Todo&#xff09;应用&#xff0c;对四大主流框架——Spring Boot、Django、Node.js和ASP.NET展开全面的性能较量。我们将从底层架构特性出发&#xff0c;结合实测数据与数据…

为什么 `source ~/.bashrc` 在 systemd 或 crontab 中不生效

摘要&#xff1a;你是否遇到过这样的问题&#xff1a;在终端里运行脚本能正常工作&#xff0c;但用 systemd 或 crontab 自动启动时却报错“命令找不到”、“模块导入失败”&#xff1f; 本文将揭示一个深藏在 ~/.bashrc 中的“陷阱”&#xff1a;非交互式 shell 会直接退出&am…

Linux 磁盘中的文件

1.磁盘结构 Linux中的文件加载到内存上之前是放到哪的&#xff1f; 放在磁盘上的文件——>访问文件&#xff0c;打开它——>找到这个文件——>路径 但文件是怎样存储在磁盘上的 1.1物理结构磁盘可以理解为上百亿个小磁铁&#xff08;如N为1&#xff0c;S为0&#xff0…

【方法】Git本地仓库的文件夹不显示红色感叹号、绿色对号等图标

文章目录前言开始操作winr&#xff0c;输入regedit&#xff0c;打开注册表重启资源管理器前言 这个绿色对号图标表示本地仓库和远程的GitHub仓库内容保持一致&#xff0c;红色则是相反咯&#xff0c;给你们瞅一下。 首先这两个东西你一定要安装配置好了&#xff0c;安装顺序不…

量化交易与主观交易:哪种方式更胜一筹?

文章概要 在投资的世界里&#xff0c;量化交易和主观交易如同冰与火&#xff0c;各自拥有独特的优势与挑战。作为一名投资者&#xff0c;了解这两种交易方式的差异和各自的优缺点至关重要。本文将从决策依据、执行方式、风险管理等方面深入探讨量化交易的精确性与主观交易的灵活…

【JS】扁平树数据转为树结构

扁平数据转为最终效果[{"label":"疼逊有限公司","code":"1212","disabled":false,"parentId":"none","children":[{"label":"财务部","code":"34343&quo…

数据结构4-栈、队列

摘要&#xff1a;本文系统介绍了栈和队列两种基础数据结构。栈采用"先进后出"原则&#xff0c;分为顺序栈和链式栈&#xff0c;详细说明了压栈、出栈等基本操作及其实现方法。队列遵循"先进先出"规则&#xff0c;同样分为顺序队列和链式队列&#xff0c;重…