如何在Python中将int类型转换为枚举类型?

10 浏览
0 Comments

如何在Python中将int类型转换为枚举类型?

如何使用Python 2.7.6的新枚举特性(通过enum34的后向兼容)。

给定以下定义,如何将int转换为对应的枚举值?

from enum import Enum
class Fruit(Enum):
    Apple = 4
    Orange = 5
    Pear = 6

我知道可以手动编写一系列if语句来进行转换,但是否有一种简便的Pythonic方式来进行转换?基本上,我想要一个名为ConvertIntToFruit(int)的函数,它返回一个枚举值。

我的用例是,我有一个记录的csv文件,我正在将每个记录读入一个对象中。文件中的一个字段是表示枚举的整数字段。在填充对象时,我希望将文件中的整数字段转换为对象中对应的枚举值。

0