在枚举类中使用枚举

时间:2020-07-01 07:31:24

标签: python

对于“ MAX_SPEC = 51 + OFFSET”,以下代码抱怨“期望类型'int',得到'AP'intead”,但MAX_SPEC的值已正确计算。

class AP(Enum):                  
    OFFSET = 6
    MAX_SPEC = 51 + OFFSET 
    AP_MAX = MAX_SPEC + 18     

但是当我将其更改为以下代码时,pycharm可以。但是当我运行它时,我得到了

“ MAX_SPEC = 51 + OFFSET.value

AttributeError:“ int”对象没有属性“ value””

class AP(Enum):                  
    OFFSET = 6
    MAX_SPEC = 51 + OFFSET.value 
    AP_MAX = MAX_SPEC.value + 18  

当我运行pycharm时,如何让它不抱怨但仍获得正确的值?

这是一个测试程序:

from enum import Enum


class AP(Enum):
    OFFSET = 6
    MAX_SPEC = 51 + OFFSET.value
    AP_MAX = MAX_SPEC.value + 18


if __name__ == "__main__":
    ap = AP
    print(ap.MAX_SPEC.value)

0 个答案:

没有答案
相关问题