当前位置: 首页 > news >正文

python中的集合

目录

初识集合

集合的含义

集合的作用

集合的使用场景

集合的定义

集合的常用操作

元素的增加

函数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.lryc.cn/news/613550.html

相关文章:

  • 移动端录屏需求调研:以小熊录屏为例的轻量级实现方案
  • 线程池创建线程
  • jmeter要如何做接口测试?
  • Jmeter使用第一节-认识面板(Mac版)
  • 【线性代数】5特征值和特征向量
  • Vue3获取当前页面相对路径
  • 站在Vue的角度,对比鸿蒙开发中的状态管理
  • Casrel关系抽取
  • vue3 el-select 加载触发
  • AI绘画:生成唐初李世民全身像提示词
  • 【unity实战】使用Unity程序化生成3D随机地牢(附项目源码)
  • 8.3.1 注册服务中心Etcd
  • 【感知机】感知机(perceptron)学习算法的对偶形式
  • Java包装类详解与应用指南
  • Caffeine 三种过期策略详解
  • Day 6: CNN卷积神经网络 - 计算机视觉的核心引擎
  • MCU中的USB
  • 论文解读:单个标点符号如何欺骗LLM,攻破AI评判系统
  • Linux总线,设备和驱动关系以及匹配机制解析
  • vue打包号的文件如何快速查找文件打包后的位置
  • Redis 编译错误:缺少静态库文件,如何解决?
  • 在NVIDIA Orin上用TensorRT对YOLO12进行多路加速并行推理时内存泄漏 (中)
  • PoE延长器——突破网络距离限制
  • 数据赋能(386)——数据挖掘——迭代过程
  • PyCharm 图标 c、m、f、F、v、p 的含义
  • 科技云报到:热链路革命:阿卡 CRM 的 GTM 定位突围
  • 健永科技工位RFID读卡器实现生产流水线物料跟踪与柔性化升级
  • 美食广场: 城市胃的便利店
  • MySQL UNION 操作符详细说明
  • 如何在GPU上安装使用Docker