作者热门文章
- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
将字符串转换为 Enum
子类的相应实例的正确方法是什么?似乎 getattr(YourEnumType, str)
可以完成这项工作,但我不确定它是否足够安全。
举个例子,假设我有一个类似的枚举
class BuildType(Enum):
debug = 200
release = 400
给定字符串 'debug'
,我怎样才能得到 BuildType.debug
作为结果?
最佳答案
此功能已内置于 Enum
:
>>> from enum import Enum
>>> class Build(Enum):
... debug = 200
... build = 400
...
>>> Build['debug']
<Build.debug: 200>
成员名称区分大小写,因此如果正在转换用户输入,您需要确保大小写匹配:
an_enum = input('Which type of build?')
build_type = Build[an_enum.lower()]
关于python - 在 Python 中将字符串转换为枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41407414/
我是一名优秀的程序员,十分优秀!