首页 >后端开发 >Python教程 >如何在 Python 中实现和使用枚举?

如何在 Python 中实现和使用枚举?

Susan Sarandon
Susan Sarandon原创
2024-12-20 06:16:08975浏览

How Do I Implement and Use Enumerations in Python?

在 Python 中实现枚举

Python 在 Python 3.4 或更高版本中提供了内置 enum 模块。该模块允许表示枚举,枚举是命名常量的集合。要使用它,您可以按照以下步骤操作:

  1. 导入枚举模块:

    import enum
  2. 定义枚举:

    Animal = enum.Enum('Animal', 'ant bee cat dog')
  3. 访问成员枚举:

    Animal.ant  # returns <Animal.ant: 1>
    Animal['ant']  # returns <Animal.ant: 1> (string lookup)
    Animal.ant.name  # returns 'ant' (inverse lookup)

或者,您可以使用基于类的方法定义枚举:

class Animal(enum.Enum):
    ant = 1
    bee = 2
    cat = 3
    dog = 4

早期版本的 Python

在早期版本的 Python 中,您可以使用以下命令创建自己的自定义枚举功能一个类:

class Enum(object):
    def __init__(self, *args):
        self.keys = args

    def __getattr__(self, attr):
        try:
            return attr, self.keys.index(attr)
        except:
            raise AttributeError(attr)

在MyPy中使用typing.Literal

使用MyPy进行类型检查时,还可以使用typing.Literal来表达枚举:

from typing import Literal

Animal: Literal['ant', 'bee', 'cat', 'dog']

以上是如何在 Python 中实现和使用枚举?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn