有一段代码包含一个字典common
,其内容如下:
common = {
"outer_diameter_injector": 1,
"side_wall_thickness_injector": 1,
"number_input_tangential_holes": 1,
"diameter_input_tangential_holes": 1,
"length_input_tangential_holes": 1,
"relative_length_twisting_chamber": 1,
"diameter_injector_nozzle": 1,
"relative_length_injector_nozzle": 1,
"angle_nozzle_axis": 1,
"mass_flow_rate": 1,
"viscosity": 1,
"cross_sectional_area_one_passage_channel": 1,
"density_fuel_component_front_injector": 1,
"density_combustion_products": 1,
"surface_tension_coefficient": 1,
"injector_type": "CENTRIFUGAL"
}
我需要程序了解程序当前使用的参数。示例:值变量存储一个参数outer_diameter_injector
,我需要跟踪这正是它并输出“test”
我正在尝试这样做:
from src.centrifugal_injector_calc import Injector
from dataclasses import dataclass
@dataclass(frozen=True, slots=True)
class InjectorRange:
common = {
"outer_diameter_injector": 0,
"side_wall_thickness_injector": 1,
"number_input_tangential_holes": 1,
"diameter_input_tangential_holes": 1,
"length_input_tangential_holes": 1,
"relative_length_twisting_chamber": 1,
"diameter_injector_nozzle": 1,
"relative_length_injector_nozzle": 1,
"angle_nozzle_axis": 1,
"mass_flow_rate": 1,
"viscosity": 1,
"cross_sectional_area_one_passage_channel": 1,
"density_fuel_component_front_injector": 1,
"density_combustion_products": 1,
"surface_tension_coefficient": 1,
"injector_type": "CENTRIFUGAL"
}
centrifugal_injector = Injector(
**common
)
@property
def checking_zero_value(self):
"""Возвращает сообщение об ошибке в случае если в словаре common будут найдены параметры со значением 0"""
for key, value in self.common.items():
if value == 0:
raise ValueError(key)
但在这种情况下你只能得到:
<property object at 0x000001F243800360>
如何修复它?