使用python3.7 dataclass
,我可以编写如下内容:
class Foo:
fuzz: int = field(default=0, metadata={'ns_unit': 'km'})
bazz: str = field(default='', metadata={'ns_prefix': 'xx_', 'ns_other': 1})
这些元数据在其他地方使用。我想要的是一种使用装饰器设置元数据的方法,例如:
class Foo:
@ns(unit='km')
fuzz: int = 0
@ns(prefix='xx_', other=1)
bazz: str = field(default='')
我有可能实现吗?