本文摘自php中文网,作者乌拉乌拉~,侵删。
在以下的文章之中我们来了解一下什么是python中的枚举类。了解一下什么是python枚举类,以及python枚举类在python编程之中能起到什么样的作用。枚举的定义
首先,定义枚举要导入enum模块。
枚举定义用class关键字,继承Enum类。
注意:
定义枚举时,成员名称不允许重复
默认情况下,不同的成员值允许相同。但是两个相同值的成员,第二个成员的名称被视作第一个成员的别名
如果枚举中存在相同值的成员,在通过值获取枚举成员时,只能获取到第一个成员
如果要限制定义枚举时,不能定义相同值的成员。可以使用装饰器@unique【要导入unique模块】
当我们需要定义常量时,一个办法是用大写变量通过整数来定义,例如月份:
1 2 3 4 5 6 |
|
好处是简单,缺点是类型是int,并且仍然是变量。
更好的方法是为这样的枚举类型定义一个class类型,然后,每个常量都是class的一个唯一实例。Python提供了Enum类来实现这个功能:
1 2 |
|
这样我们就获得了Month类型的枚举类,可以直接使用Month.Jan来引用一个常量,或者枚举它的所有成员:
1 2 |
|
value属性则是自动赋给成员的int常量,默认从1开始计数。
如果需要更精确地控制枚举类型,可以从Enum派生出自定义类:
1 2 3 4 5 6 7 8 9 10 11 |
|
@unique装饰器可以帮助我们检查保证没有重复值。
访问这些枚举类型可以有若干种方法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
|
可见,既可以用成员名称引用枚举常量,又可以直接根据value的值获得枚举常量。
以上就是本篇文章所讲述的所有内容,这篇文章主要介绍了python枚举类的相关知识,希望你能借助资料从而理解上述所说的内容。希望我在这片文章所讲述的内容能够对你有所帮助,让你学习python更加轻松。
更多相关知识,请访问php中文网Python教程栏目。
以上就是python枚举类定义及作用(实例解析)的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
Python批量合并有合并单元格的excel文件详解_Python
vscode编写第一个Python程序helloworld步骤_Python
更多相关阅读请进入《Python》频道 >>

Python编程 从入门到实践 第2版
python入门书籍,非常畅销,超高好评,python官方公认好书。