Python中的enum的使用方法
作者:phac12 时间:2023-10-17 16:59:24
为什么要使用Enum.(Why?)
在普通类别中,枚举和我们在对象中定义的类变量一样的,每一个类变量就是一个枚举项,
访问方式如下:
class HelloWolrd:
life = 0
literature = 1
science = 2
math = 3
person = -1
xzh = 0
lq = 3
wj = 2
print(HelloWolrd.lq)
HelloWolrd.lq = 9
print(HelloWolrd.lq)
这样的使用方法是存在两个问题的,即:
枚举类中,不应该存在key相同的枚举项(类变量) 不允许在类的外部直接修改枚举项的值
为了解决这个问题,我们考虑使用enum模块.
使用enum
enum模块是系统内置模块,可以直接使用import导入,但是在导入的时候,不建议直接使用import enum将enum模块全部导入,一般使用Enum, IntEnum,unique等.
from enum import Enum
class HelloWolrd(Enum):
literature = 1
person = -1
xzh = 0
lq = 3
wj = 2
print(HelloWolrd.lq)
print(HelloWolrd.lq.value)
使用了Enum后面,有下面的限制:
枚举类不能用来实例化对象
访问枚举类中的某一项, 直接使用类名加上要访问的项即可, 比如color.YELLOW
枚举类里面定义的Key = Value, 在类外部不能修改Value值.
如果在枚举类中的不同的key对应的value也想不同,那么在导入Enum的同时,需要导入unique如果想要value都是Int类型的,可导入IntEnum
来源:https://blog.csdn.net/weixin_42596275/article/details/126277780
标签:Python,enum,使用
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
python数据类型可变不可变知识点总结
2021-10-29 13:26:11
推荐系统MostPopular算法的Python实现方式
2022-04-21 14:44:24
python pyheatmap包绘制热力图
2021-02-18 21:35:46
对python 操作solr索引数据的实例详解
2023-11-02 16:18:19
![](https://img.aspxhome.com/file/2023/5/77715_0s.jpg)
Python进程通信之匿名管道实例讲解
2021-08-26 16:23:46
idea激活码最新获取方法(idea2020激活码汇总)
2024-01-03 08:42:52
innerHTML 的一些问题
2008-06-17 17:39:00
解决启动django,浏览器显示“服务器拒绝访问”的问题
2023-08-20 05:45:01
![](https://img.aspxhome.com/file/2023/5/93485_0s.jpg)
Python采集图片数据的实现示例
2023-03-06 05:53:17
![](https://img.aspxhome.com/file/2023/5/75075_0s.png)
PyG搭建GCN模型实现节点分类GCNConv参数详解
2022-08-22 19:58:49
![](https://img.aspxhome.com/file/2023/2/97702_0s.png)
python 如何利用chinese_calendar 获取上一个工作日日期
2022-01-12 12:07:32
![](https://img.aspxhome.com/file/2023/2/78762_0s.png)
如何利用触发器实现两个数据库间的同步
2009-01-06 11:26:00
使用git上传到码云分支的实现
2022-04-01 06:05:06
![](https://img.aspxhome.com/file/2023/5/132465_0s.png)
Python 6种基本变量操作技巧总结
2023-04-03 21:50:04
![](https://img.aspxhome.com/file/2023/2/97412_0s.jpg)
Python使用Turtle模块绘制五星红旗代码示例
2022-03-02 16:17:19
![](https://img.aspxhome.com/file/2023/2/121862_0s.png)
python 使用装饰器并记录log的示例代码
2022-02-17 02:15:03
你真的知道怎么优化SQL吗
2024-01-23 02:59:23
![](https://img.aspxhome.com/file/2023/2/92782_0s.jpg)
mysql 8.0.28 安装配置方法图文教程
2024-01-16 16:40:26
![](https://img.aspxhome.com/file/2023/3/106573_0s.jpg)
python生成随机数、随机字符、随机字符串的方法示例
2021-06-04 06:46:39
如何解决tensorflow恢复模型的特定值时出错
2023-12-22 14:59:36
![](https://img.aspxhome.com/file/2023/1/91831_0s.jpg)