目录

 

枚举Enum

创建枚举

通过构造函数创建枚举对象

 

访问枚举对象中元素的方法

通过继承枚举类创建枚举对象

格式:

枚举类的构造器


枚举Enum

   开发的时候遇到一些状态,flag等一些东西可以定义枚举类来表示。

    学过java都知道如何创建枚举类 Enum, 给定构造函数,然后在内部写枚举对象以及枚举对象的属性

   那么python也是一样的。而且python提供了创建枚对象的构造函数了可以满足一些简单的创建

创建枚举

1.直接使用 enum模块中的Enum构造函数 来创建枚举对象

2.通过继承Enum类

 

通过构造函数创建枚举对象

下面通过 enums模块中的Enum类的构造函数创建一个枚举对象

每个枚举对象都有 name 和 value 两个属性

创建枚举对象的时候,需要制定 对象变量名称 , 以及枚举对象

下面代码中的 oper 就是枚举对象变量名称

其中的 + - * / 就是枚举对象

枚举对象的值默认从1 开始(我们没有指定的情况)

 

python笔记系列-day19: python中的枚举类

 

访问枚举对象中元素的方法

可以直接通过下面四种方式进行访问

1. 枚举对象.元素名 : 但是这个要求元素名称必须是合法的标识符满足变量名要求

2.枚举对象['元素名'] : 这个就是我们自由定义字符串即可

3.枚举对象(value) 也就是通过枚举值来进行访问的

枚举值是从1开始进行标记出来的

4.枚举对象会提供一个 __members__属性,返回一个字典用于记录枚举所有的枚举实例

     因此可以循环这个字典访问

 

python笔记系列-day19: python中的枚举类

 

 

通过继承枚举类创建枚举对象

格式:

class MyEnum(enum.Enum):

   #定义类变量

 

枚举类的构造器

枚举的构造器必须指定参数值

这种定义枚举的方法和Java是一样的

需要制定 枚举对象的属性,然后是构造函数需要提供这些属性的入参

然后就是直接 写出 需要的枚举对象即可。

注意定义好构造函数之后,写枚举对象的方式  (     Java中是  枚举对象(属性1,属性2,属性3... )     )

而python 中就是   枚举对象 = 属性1,属性2....

例如下面我们创建一个 状态的枚举类

这个类中我们将枚举对象的属性定义为  __code 和 __desc 

这样可以对外界隐藏属性

然后我们使用  @property来定义一个供外部访问的合成属性

对于@property 这是函数装饰器,在java中是注解

后面会学习到函数装饰器的,这里只要形式上理解 它修饰一个函数,定义一个属性

枚举对象的访问方式和 Java 也是一样的

枚举类.枚举对象

python笔记系列-day19: python中的枚举类

 

 

 

 

 

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-09-14
  • 2021-05-25
  • 2022-12-23
  • 2021-12-06
  • 2021-07-17
  • 2022-12-23
猜你喜欢
  • 2021-08-13
  • 2021-07-12
  • 2021-10-24
  • 2021-12-26
  • 2021-08-12
  • 2022-12-23
相关资源
相似解决方案