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

python枚举类型遍历数据并获得索引号

在 Python 中可以使用enum模块创建枚举类型并通过遍历枚举成员来获取其索引号即枚举值的序号。以下是详细方法和示例方法 1使用enum.Enum和enumerate()通过enumerate()遍历枚举成员同时获取索引和枚举值。fromenumimportEnumclassColor(Enum):RED1GREEN2BLUE3# 遍历枚举并获取索引和值forindex,colorinenumerate(Color,start1):# start1 表示索引从1开始默认从0print(fIndex:{index}, Name:{color.name}, Value:{color.value})输出Index: 1, Name: RED, Value: 1 Index: 2, Name: GREEN, Value: 2 Index: 3, Name: BLUE, Value: 3方法 2直接通过枚举成员的name和value属性如果不需要显式遍历索引可以直接访问枚举成员的属性forcolorinColor:print(fName:{color.name}, Value:{color.value})输出Name: RED, Value: 1 Name: GREEN, Value: 2 Name: BLUE, Value: 3方法 3获取枚举成员的序号基于定义顺序如果需要枚举成员的定义顺序序号从 0 开始可以通过list(Enum).index(member)实现forcolorinColor:indexlist(Color).index(color)# 获取定义顺序的索引从0开始print(fOrder Index:{index}, Name:{color.name}, Value:{color.value})输出Order Index: 0, Name: RED, Value: 1 Order Index: 1, Name: GREEN, Value: 2 Order Index: 2, Name: BLUE, Value: 3方法 4使用__members__属性通过__members__访问枚举的名称到成员的映射再结合enumerate()fori,nameinenumerate(Color.__members__,start1):colorColor[name]print(fIndex:{i}, Name:{name}, Value:{color.value})输出Index: 1, Name: RED, Value: 1 Index: 2, Name: GREEN, Value: 2 Index: 3, Name: BLUE, Value: 3总结索引需求如果需要自定义索引如从 1 开始用enumerate(Enum, start1)。定义顺序序号用list(Enum).index(member)获取 0 开始的序号。直接访问属性枚举成员的name和value是最常用的属性。根据需求选择合适的方法即可

相关文章:

python枚举类型遍历数据并获得索引号

在 Python 中,可以使用 enum 模块创建枚举类型,并通过遍历枚举成员来获取其索引号(即枚举值的序号)。以下是详细方法和示例:方法 1:使用 enum.Enum 和 enumerate() 通过 enumerate() 遍历枚举成员&#xff…...

real-anime-z效果验证:人工盲测显示real-anime-z生成图二次元辨识率达96.3%

real-anime-z效果验证:人工盲测显示real-anime-z生成图二次元辨识率达96.3% 1. 引言 在动漫创作领域,AI生成技术正带来革命性变化。real-anime-z作为一款专为二次元插画创作设计的文生图镜像,近期通过人工盲测验证了其出色的风格还原能力。…...

告别安装烦恼:用 pyenv-win 在 Windows 上轻松管理多个Python版本(3.10.6/3.11/3.12自由切换)

告别安装烦恼:用 pyenv-win 在 Windows 上轻松管理多个Python版本(3.10.6/3.11/3.12自由切换) 你是否遇到过这样的场景:手头同时维护着基于Python 3.10.6的旧项目和采用Python 3.12新特性的开发任务?每次切换项目都要反…...

STM32H743外挂W5500做UDP通信,一个Socket端口如何同时处理多个客户端数据?

STM32H743与W5500实现单Socket多客户端UDP通信的实战解析 在嵌入式网络通信中,UDP协议因其低开销和实时性优势被广泛应用于设备间数据传输。本文将深入探讨STM32H743通过W5500以太网模块实现单Socket端口同时处理多客户端数据的解决方案,相比传统多Socke…...

GBFR Logs:碧蓝幻想Relink玩家的终极DPS监控与数据分析工具

GBFR Logs:碧蓝幻想Relink玩家的终极DPS监控与数据分析工具 【免费下载链接】gbfr-logs GBFR Logs lets you track damage statistics with a nice overlay DPS meter for Granblue Fantasy: Relink. 项目地址: https://gitcode.com/gh_mirrors/gb/gbfr-logs …...

3分钟解锁Windows安卓魔法:告别笨重模拟器时代

3分钟解锁Windows安卓魔法:告别笨重模拟器时代 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾经幻想过,在Windows上运行安卓应用可以像…...

全网最全渗透测试实战流程与思维逻辑详解,小白从零入门一键直达大神水平

渗透测试步骤与思路 一、信息搜集 1、主机扫描 (1)扫描某个网段内存活的主机,可以使用御剑高速端口扫描器的ip范围查找,扫描端口的同时还能顺便将存活的ip地址查出来 (2)扫描主机开放的端口和服务&…...

5分钟魔法:用ImageToSTL将图片变成可触摸的3D打印模型

5分钟魔法:用ImageToSTL将图片变成可触摸的3D打印模型 【免费下载链接】ImageToSTL This tool allows you to easily convert any image into a 3D print-ready STL model. The surface of the model will display the image when illuminated from the left side. …...

想要副业增收、入职网安?这份 SRC 漏洞挖掘全流程指南,帮你快速上手漏洞挖掘

凌晨两点,大学生张三盯着电脑屏幕突然跳出的「高危漏洞奖励到账」提示,手抖得差点打翻泡面——这是他挖到人生第一个SRC漏洞(某电商平台的越权访问漏洞)后收到的第一笔奖金,金额足够支付三个月生活费。这样的故事&…...

5分钟掌握跨平台直播自动录制神器

5分钟掌握跨平台直播自动录制神器 【免费下载链接】LiveAutoRecord 基于 Electron 的多平台直播自动录制软件 项目地址: https://gitcode.com/GitHub_Trending/li/LiveAutoRecord 你是否经常错过心仪主播的精彩直播?是否因为工作繁忙而无法实时观看喜爱的直播…...

可移动天线与模拟波束成形技术解析

1. 可移动天线与模拟波束成形技术解析在无线通信系统中,物理层安全(Physical Layer Security, PLS)一直是研究热点。传统固定位置天线(FPA)系统虽然通过增加天线数量可以提升性能,但硬件成本和系统复杂度也…...

用Python+OpenCV玩转图像抖动:从超市小票到DIY拍立得的实战教程

用PythonOpenCV玩转图像抖动:从超市小票到DIY拍立得的实战教程 热敏打印机作为生活中常见的输出设备,其低成本、便携性使其成为创客项目的理想选择。但热敏打印只能输出黑白二值图像的特性,让许多开发者望而却步。本文将带你深入探索四种经典…...

Oracle数据库工程师入门培训实战教程(从Oracle11g 到 Oracle19c)

Oracle数据库工程师入门培训实战教程(从Oracle11g 到 Oracle19c) 一、参考资料 【Oracle数据库工程师入门培训实战教程(从Oracle11g 到 Oracle19c)】 https://www.bilibili.com/video/BV1UJH9eLEpg/?share_sourcecopy_web&vd…...

如何解锁联想拯救者笔记本的隐藏BIOS选项:一位技术爱好者的探索之旅

如何解锁联想拯救者笔记本的隐藏BIOS选项:一位技术爱好者的探索之旅 【免费下载链接】LEGION_Y7000Series_Insyde_Advanced_Settings_Tools 支持一键修改 Insyde BIOS 隐藏选项的小工具,例如关闭CFG LOCK、修改DVMT等等 项目地址: https://gitcode.com…...

KIHU快狐|圆形触摸查询机RK3566国产鸿蒙汽车4s店嵌入式终端

在当今信息化时代,提供高效、直观的信息展示方式对于提升客户体验和促进销售至关重要。[KIHU快狐]推出的圆形触摸查询机RK3566,以其独特的设计与强大的功能,在众多汽车4S店中脱颖而出,成为提升客户服务的新利器。产品概述[KIHU快狐…...

如何处理ORA-01555报错_快照过旧与UNDO_RETENTION参数调整

ORA-01555本质是查询所需的一致性读镜像被覆盖,主因是UNDO_RETENTION与实际空间不足的矛盾;需优先扩容UNDO表空间并启用AUTOEXTEND,再合理调参,对长查询应分片处理而非盲目延长保留时间。ORA-01555报错本质是UNDO数据被覆盖&#…...

Spring AI 1.0.6、1.1.5、2.0.0-M5 发布,带来改进、修复与安全更新!

2026 年 4 月 27 日,Spring AI 1.0.6、1.1.5、2.0.0 - M5 版本正式发布,带来重要改进、稳定性增强、错误修复、文档更新及安全修复。 Spring AI 1.0.6:维护与升级 此为维护版本,包含 1 个依赖项升级和 1 个构建修复。Spring Boo…...

微信小程序扫码空白问题的一种情况

现象:微信小程序上传多次,都是成功返回,且生成了二维码图片,但是部分扫码成功,部分打开空白。上传参数是体验版(trial)解决办法:登录微信后台→版本管理→设置最新版本号的开发版为体验版,即可查…...

告别轮询卡顿!STM32CubeMX配置ADC+DMA实现后台连续采集(STM32F072实战)

STM32CubeMX实战:ADCDMA实现无阻塞连续采集方案 在嵌入式开发中,模拟信号采集是常见需求,但传统轮询方式常导致CPU资源浪费和程序卡顿。以STM32F072为例,当使用HAL_ADC_PollForConversion等待转换完成时,整个系统就像…...

从焊接调试到性能压测:我的APS6404L QSPI PSRAM踩坑全记录与避坑指南

从焊接调试到性能压测:我的APS6404L QSPI PSRAM踩坑全记录与避坑指南 第一次拿到APS6404L这颗QSPI PSRAM芯片时,我完全没预料到后续会经历如此曲折的调试历程。作为一款8MB容量的串行SRAM,它在理论参数上看起来非常诱人——高达104MHz的时钟频…...

终极指南:快速掌握Dlib Windows预编译包的核心技巧

终极指南:快速掌握Dlib Windows预编译包的核心技巧 【免费下载链接】Dlib_Windows_Python3.x Dlib compiled binaries (.whl) for Python 3.7-3.14 and Windows x64 项目地址: https://gitcode.com/gh_mirrors/dl/Dlib_Windows_Python3.x 你是否曾在Windows上…...

从MobileNet到MobileViTv3:手把手教你为移动端部署选择最合适的轻量级视觉模型

移动端视觉模型选型指南:从MobileNet到MobileViTv3的工程实践 在移动端和边缘设备上部署视觉模型时,工程师们常常面临一个关键挑战:如何在有限的算力、内存和功耗预算下,选择既能满足实时性要求又能保证精度的轻量级模型。本文将深…...

如何用5个文件实现微信自动化:WechatBot轻量级解决方案

如何用5个文件实现微信自动化:WechatBot轻量级解决方案 【免费下载链接】WechatBot 项目地址: https://gitcode.com/gh_mirrors/wechatb/WechatBot 你是否厌倦了每天重复回复相同的微信消息?是否希望有一个24小时在线的智能助手帮你处理繁琐的沟…...

别再被GLIBC版本卡脖子!手把手教你编译适配旧系统的tun2proxy二进制文件

突破GLIBC版本限制:为老旧系统定制编译tun2proxy的完整指南 当你在CentOS 7或Ubuntu 18.04等老旧Linux发行版上运行最新版tun2proxy时,终端突然弹出GLIBC_2.33 not found的错误提示——这种场景对系统管理员而言再熟悉不过了。生产环境的稳定性要求往往锁…...

告别人工质检:用PatchCore、DRAEM这些SOTA模型,5步搞定工业缺陷检测

工业缺陷检测实战:5步部署PatchCore与DRAEM模型 在一条高速运转的饮料罐装生产线上,每分钟有上千个铝罐经过摄像头——当某个罐体出现0.5mm的划痕时,传统人工质检的漏检率高达15%。这正是我们团队去年用PatchCore模型解决的现实案例。现代工业…...

如何突破8位MCU性能瓶颈?GRBL_for_STM32嵌入式系统移植指南

如何突破8位MCU性能瓶颈?GRBL_for_STM32嵌入式系统移植指南 【免费下载链接】GRBL_for_STM32 A code transportation from origin grbl_v1.1f to STM32F103VET6, mainly prepare for my MegaCNC project. 项目地址: https://gitcode.com/gh_mirrors/gr/GRBL_for_S…...

【无人机控制】城市无人机混合多速率自适应扰动估计与稳定控制Matlab实现

​✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书…...

393. Java 文件操作基础 - 异常捕获与处理

文章目录393. Java 文件操作基础 - 异常捕获与处理1️⃣ IOException —— 文件 I/O 的“通用异常”2️⃣ try-with-resources —— 最推荐的写法 ✅3️⃣ 传统的 try-catch-finally 写法 ⚠️(不推荐)4️⃣ FileSystemException —— 更详细的异常信息5…...

彻底卸载Microsoft Edge浏览器:Windows用户必备的终极解决方案

彻底卸载Microsoft Edge浏览器:Windows用户必备的终极解决方案 【免费下载链接】EdgeRemover A PowerShell script that correctly uninstalls or reinstalls Microsoft Edge on Windows 10 & 11. 项目地址: https://gitcode.com/gh_mirrors/ed/EdgeRemover …...

5分钟掌握Unity游戏去马赛克:免费插件完整使用指南

5分钟掌握Unity游戏去马赛克:免费插件完整使用指南 【免费下载链接】UniversalUnityDemosaics A collection of universal demosaic BepInEx plugins for games made in Unity3D engine 项目地址: https://gitcode.com/gh_mirrors/un/UniversalUnityDemosaics …...