使用python 2.7.6 的新Enum功能(通过backport enum34).
给定以下定义,如何将int转换为相应的Enum值?
from enum import Enum
class Fruit(Enum):
Apple = 4
Orange = 5
Pear = 6
Run Code Online (Sandbox Code Playgroud)
我知道我可以手工制作一系列if语句来进行转换,但有一种简单的pythonic方式转换吗?基本上,我想要一个返回枚举值的函数ConvertIntToFruit(int).
我的用例是我有一个记录的csv文件,我将每条记录读入一个对象.其中一个文件字段是表示枚举的整数字段.当我填充对象时,我想将文件中的整数字段转换为对象中相应的Enum值.
使用python 3.4.我创建了一个enum类型,如下所示:
import enum
class EnumGender(enum.Enum):
blank = ' '
female = 'Female'
male = 'Male'
other = 'Other'
Run Code Online (Sandbox Code Playgroud)
我的问题是如何将它分配给flask-restplus字段,因为我能看到的唯一例子是:
fields.String(description='The object type', enum=['A', 'B'])