使用其他 属性 名称的值创建枚举
create enum using other property name's value
如何创建枚举 class,使其 属性 使用其他成员的值?喜欢我下面的代码
from enum import Enum
class ProjectPath(Enum):
home = '~/home'
app = '~/home/app'
prefix = '~/home/app/prefix'
postfix = '~/home/app/postfix'
'''
try to do something like
from enum import Enum
class ProjectPath(Enum):
home = '~/home'
app = f'{self.home.value}/app'
prefix = f'{self.app.value}/prefix'
postfix = f'{self.app.value}/postfix'
'''
不要尝试将其中的变量作为枚举引用,只是像局部变量一样使用它们。
from enum import Enum
class ProjectPath(Enum):
home = '~/home'
app = f'{home}/app'
prefix = f'{app}/prefix'
postfix = f'{app}/postfix'
print(*[f"{var=}" for var in ProjectPath], sep="\n")
输出
var=<ProjectPath.home: '~/home'>
var=<ProjectPath.app: '~/home/app'>
var=<ProjectPath.prefix: '~/home/app/prefix'>
var=<ProjectPath.postfix: '~/home/app/postfix'>
只需使用:
class ProjectPath(Enum):
home = '~/home'
app = f'{home}/app'
prefix = f'{app}/prefix'
postfix = f'{app}/postfix'
如何创建枚举 class,使其 属性 使用其他成员的值?喜欢我下面的代码
from enum import Enum
class ProjectPath(Enum):
home = '~/home'
app = '~/home/app'
prefix = '~/home/app/prefix'
postfix = '~/home/app/postfix'
'''
try to do something like
from enum import Enum
class ProjectPath(Enum):
home = '~/home'
app = f'{self.home.value}/app'
prefix = f'{self.app.value}/prefix'
postfix = f'{self.app.value}/postfix'
'''
不要尝试将其中的变量作为枚举引用,只是像局部变量一样使用它们。
from enum import Enum
class ProjectPath(Enum):
home = '~/home'
app = f'{home}/app'
prefix = f'{app}/prefix'
postfix = f'{app}/postfix'
print(*[f"{var=}" for var in ProjectPath], sep="\n")
输出
var=<ProjectPath.home: '~/home'>
var=<ProjectPath.app: '~/home/app'>
var=<ProjectPath.prefix: '~/home/app/prefix'>
var=<ProjectPath.postfix: '~/home/app/postfix'>
只需使用:
class ProjectPath(Enum):
home = '~/home'
app = f'{home}/app'
prefix = f'{app}/prefix'
postfix = f'{app}/postfix'