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

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

Susan Sarandon
发布: 2024-12-20 06:16:08
原创
995 人浏览过

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中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板