class ParamData: VAR_TYPE_VAR = 0 VAR_TYPE_ARR = 1 def __init__(self, p_id, addr, name, details, var_type): self.id = p_id self.addr = addr self.name = name self.details = details self.type = var_type self.item = None class ParamDataVar(ParamData): def __init__(self, p_id=0, addr=0, name='', details='', var_type=0): super().__init__(p_id, addr, name, details, var_type) self._getval = 0 self._setval = 0 def val(self): return self._getval def update_val(self, val): self._getval = val self.item.setText(str(self.val())) def setval(self): return self._setval def update_setval(self, val): self._setval = val class ParamDataArr(ParamData): def __init__(self, p_id=0, addr=0, name='', details='', var_type=0, length=1): super().__init__(p_id, addr, name, details, var_type) self.size = length self.getval_list = [0] * length self.setval_list = [0] * length class VarParamData: VAR_TYPE_VAR = 0 VAR_TYPE_ARR = 1 def __init__(self, addr, name, details, var_type): self.addr = addr self.name = name self.details = details self.type = self.VAR_TYPE_VAR if var_type == 'VAR' else self.VAR_TYPE_ARR self._current_val = 0 self._set_val = 0 def current_val(self): return self._current_val def set_val(self, set_val): self._set_val = set_val if __name__ == "__main__": test_list = [0] * 10 print(test_list)