[英]By Knowing class name, how to get class key with its default value | PYTHON
I have multiple class in one file(a.py).我在一个文件 (a.py) 中有多个 class。 On other file (b.py) i know some class name.
在其他文件 (b.py) 上,我知道一些 class 名称。 In same file b.py i need the complete key, value of the class.
在同一个文件 b.py 中,我需要完整的键值 class。
a.py file:一个.py文件:
class CarCompany(BaseModel):
audi: Optional[str] = 'Good'
bmw: Optional[str] = 'Good'
tata: Optional[str] = 'Good'`
class CarYear(BaseModel):
2017: Optional[str] = 'Good'
2018: Optional[str] = 'top sell'
2020: Optional[str] = 'Average'`
2021: Optional[str] = 'top sell'`
b.py file: b.py文件:
I know class name by below...我通过下面知道 class 的名字...
final_class.__class__.__name__
Now how to get the class variable and its default value.现在如何获取 class 变量及其默认值。
Below one have some format like:下面一个有一些格式,如:
final_var.__class__.__dict__
'__fields__': {
'2017': ModelField(name = '2017', type = Optional[str], required = False,
default = Good),
'2018': ModelField(name = '2018', type = Optional[str], required = False,
default = top sell),
'2020': ModelField(name = '2020', type = Optional[str], required = False,
default = Average),
'2022': ModelField(name = '2022', type = Optional[str], required = False,
default = top sell)
}
Can anyone help me to get the requested format.谁能帮我得到要求的格式。
Thanks谢谢
I tried above format and code in python我在 python 中尝试了以上格式和代码
I got the solution by我得到了解决方案
var_dict = final_var.__class__.__dict__
all_fields = var_dict['__fields__']
default_val = next((v.__getattribute__('default') for i, v in all_fields.items()), None)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.