python枚举法方法很多,下面列举几种常见实现方式:


1、自定义类

1、方法1

class SeriesEnum:one, two, three, four, five, six, seven, eight, nine, ten = range(10)print(SeriesEnum.eight) # 7

2 方法2

class SeriesEnum():one     = 1two     = 2three   = 3four    = 4print(SeriesEnum.one)   # 1
2、使用系统自带模块 Enum

1、Enum 默认键值value可重复,,键Key不能重复

from enum import Enum
class SeriesEnum(Enum):one     = 1two     = 2three   = 3four    = 4print(SeriesEnum.one)          # SeriesEnum.one
print(SeriesEnum.one.value)    # 1print(SeriesEnum['two'])       # SeriesEnum.two
print(SeriesEnum['two'].value) # 2
print(SeriesEnum(2))           # SeriesEnum.two

2、如果要求键不能重复,可以使用 unique

from enum import Enum, unique@unique
class SeriesEnum(Enum):one     = 1two     = 2three   = 3four    = 4print(SeriesEnum.one)       # SeriesEnum.one
print(SeriesEnum.one.value) # 1

3、第一个参数是枚举类的类名;第二个参数是一个元组

import enum
# 定义Number枚举类
Number = enum.Enum('Number', ('one', 'two', 'three', 'four'))print(Number.One)       # Number.one
print(Number.one.value) # 1

Python:枚举法相关推荐

  1. python枚举法例子_使用枚举类

    当我们需要定义常量时,一个办法是用大写变量通过整数来定义,例如月份: JAN = 1 FEB = 2 MAR = 3 ... NOV = 11 DEC = 12 好处是简单,缺点是类型是int,并且仍 ...

  2. 蓝桥杯python省赛冲刺篇2——常用算法的详细解析及对应蓝桥杯真题:打表模拟法、递推递归法、枚举法、贪心算法、差分与前缀和

    注意:加了题目链接 目录 注意:加了题目链接 一.打表模拟法 介绍 1. 算式问题 题目描述 解析与代码演示 2. 求值 题目描述 解析与代码演示 3. 既约分数 题目描述 解析与代码演示 4. 天干 ...

  3. python算法一:枚举法

    1.定义:枚举法也称为穷举法,是利用计算机运算速度快.精确度高的特点,对要解决问题的所有可能情况,一个不漏地进行检验,从中找出符合要求的答案,因此枚举法是通过牺牲时间来换取答案的全面性.因此,使用枚举 ...

  4. c语言 3个人比饭量大小,OpenJudge计算概论-比饭量【枚举法、信息数字化】

    /*====================================================================== 比饭量 总时间限制: 1000ms 内存限制: 655 ...

  5. c语言枚举法课程设计报告,枚举法的程序实现及优化

    计新明 内容分析 本部分内容是教育科学出版社出版的必修1<数据与计算>第四单元第一节中的内容,整本书的思路是初始数据与计算.编程计算.认识数据.计算与问题解决.数据分析与人工智能,第四章属 ...

  6. python枚举算法流程图_算法-枚举

    本章我们进入算法的学习,我们会通过比较经典的例题去讲解一些常用的算法思想,常用的算法思想包括:枚举.递归.分治.贪心.试探.动态迭代和模拟等,本节我们来学习一下枚举算法. 1. 枚举思想 枚举算法我们 ...

  7. 《贝叶斯思维:统计建模的Python学习法》一1.6 MM豆问题

    本节书摘来自异步社区<贝叶斯思维:统计建模的Python学习法>一书中的第1章,第1.6节,作者[美]Allen B. Downey,更多章节内容可以访问云栖社区"异步社区&qu ...

  8. 算法:枚举法---kotlin

    枚举法:效率低,循环所有的情况,找到正确答案 用于解决数学问题,还是很简单的. 比如,奥数里面: 算 法 描 述 题X题=题题题题题题 其中 算法描述题每一个为一个数字,请写出正确的数字. ok,我们 ...

  9. 《贝叶斯思维:统计建模的Python学习法》——1.8 讨论

    本节书摘来异步社区<贝叶斯思维:统计建模的Python学习法>一书中的第1章,第1.8节,作者:[美]Allen B. Downey,更多章节内容可以访问云栖社区"异步社区&qu ...

最新文章

  1. Laravel 中简约而不简单的 Macroable 宏指令
  2. python能做什么游戏ll-一个简单的python game游戏
  3. 关于Unity中水和雾的使用
  4. linux添加cmd命令行参数,Windows 终端命令行参数 | Microsoft Docs
  5. 施一公直播首秀来了!解答读博困惑,鼓励学生勇敢申请西湖大学
  6. sqlserver 日期函数
  7. 什么是比特币?比特币的发展史,什么是挖矿?
  8. AMD深度学习库MIOpen更新,支持CNN加速
  9. CCF201412-3 集合竞价(100分)
  10. cad 2010 64位
  11. 深入浅出XTTS:Oracle数据库迁移升级利器(附PPT)
  12. 名将戚继光与北蒙之战
  13. Springboot+easyUI filebox实现单个文件上传
  14. Win10的Git中文文件名繁体火星文乱码问题
  15. Redhat Linux 5.3环境实施DB2 V9.7 HADR
  16. 阿里云ECS服务器概念理解
  17. 数据加密与安全专题《mbedtls工具篇,实用教程1@mbedtls简介和安装教程》
  18. 李笑来《韭菜的自我修养》笔记
  19. Java8 IF ELSE IF 优化
  20. PowerBI中导出数据方法汇总

热门文章

  1. 【高数】导数存在,导数就连续吗?
  2. 微信小程-截取小数点的位数
  3. java毕业设计‘大学生心理健康咨询管理系统mybatis+源码+调试部署+系统+数据库+lw
  4. PDF文件可以修改吗,PDF怎么删除页眉页脚
  5. 负载均衡和动态负载均衡
  6. offsetLeft与style.left区别
  7. iis如何发布网站 iis发布网站步骤
  8. Python14-15
  9. C语言基础课 编写程序之编程实现在一个字符串统计各元音字母(即A,E,I,O,U)的个数,注意,字母不分大小写。例如,输入THIs is a boot,则输出应为1 0 2 2 0
  10. 简单的银行利息代码(已知存不同年份利息)