我的枚举如下:
class RequestMethodVerbMapping(Enum):
POST = 'Create'
PUT = 'Update'
DELETE = 'Delete'
现在,为了访问与某个HTTP动词关联的字符串,我要执行以下操作:
In [19]: RequestMethodVerbMapping.POST.value
Out[19]: 'Create'
可以按预期工作。我做了以下操作:
import RequestMethodVerbMapping
class BaseWorkFlow:
def __init__(self, request_method):
self.request_method = request_method
def print_enum(self):
print (RequestMethodVerbMapping.self.request_method.value)
但是,这不起作用,给我一个错误:
attributeError:self
我在做什么错?
getattr()
要通过属性名称获得枚举值应完成工作:
def print_enum(self):
print(getattr(RequestMethodVerbMapping, self.request_method).value)