Python 3.x 子类中枚举的返回值
我想从子类中的枚举返回字符串值。我有一个这样的班级结构Python 3.x 子类中枚举的返回值,python-3.x,Python 3.x,我想从子类中的枚举返回字符串值。我有一个这样的班级结构 Class1 | |--subclass | | | |----Enum 现在我想从enum返回一个字符串值 我知道如何返回值returnstr(self.value) 类GSSML: 类别ProsodyAttributes: 类别比率(枚举): 定义(自我): 回归自我价值 x_slow='x-s
Class1
|
|--subclass
| |
| |----Enum
现在我想从enum返回一个字符串值
我知道如何返回值returnstr(self.value)
类GSSML:
类别ProsodyAttributes:
类别比率(枚举):
定义(自我):
回归自我价值
x_slow='x-slow'
慢=‘慢’
中等=‘中等’
快速=‘快速’
x_fast='x-fast'
默认值='default'
还有我的测试代码
导入gssml
def main():
ssml=gssml.gssml()
打印(ssml.ProsodyAttributes.Rate.x_fast)
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
main()
现在我希望它返回x-fast
但是我得到了速率.x\u fast
我不知道我做错了什么。请帮助您的代码没有返回正确的值,因为您将dunder方法
\uuuuu str\uuuuuu
拼写错了\uuu srt\uuuu
In [15]: from enum import Enum
...:
...: class GSSML:
...: class ProsodyAttributes:
...: class Rate(Enum):
...: def __str__(self):
...: return self.value
...: x_slow = 'x-slow'
...: slow = 'slow'
...: medium = 'medium'
...: fast = 'fast'
...: x_fast = 'x-fast'
...: default = 'default'
...:
...: ssml = GSSML()
...: print(ssml.ProsodyAttributes.Rate.x_fast)
x-fast
您的代码没有返回正确的值,因为您将dunder方法
\uuuu str\uuuu
拼写错误为\uuu srt\uu
In [15]: from enum import Enum
...:
...: class GSSML:
...: class ProsodyAttributes:
...: class Rate(Enum):
...: def __str__(self):
...: return self.value
...: x_slow = 'x-slow'
...: slow = 'slow'
...: medium = 'medium'
...: fast = 'fast'
...: x_fast = 'x-fast'
...: default = 'default'
...:
...: ssml = GSSML()
...: print(ssml.ProsodyAttributes.Rate.x_fast)
x-fast
是的,我知道
ssml.ProsodyAttributes.Rate.x\u fast.value
将返回值。但是为什么我的代码不返回字符串值呢?明白了,请参阅我的更新答案@f9fella,您将\uuu str\uuuu
拼错为\uu srt\uuuu
是的,我知道ssml.ProsodyAttributes.Rate.x\u fast.value
将返回值。但是为什么我的代码没有返回字符串值呢?明白了,请参阅我的更新答案@f9fella,您将\uuuu str\uuuuuuu
拼错为\uuu srt\uuuu