Итак, я пытаюсь создать модуль для управления двигателем высокого уровня, и он будет содержать кучу экземпляров класса node
. После создания каждый узел будет иметь nodeID
, busID
и operatingMode
.Лучший способ справиться с изменением «режима» класса python
После инициализации объекта узла я посылаю кадр CAN на двигатель, говоря «эй, это режим работы, в котором вы хотите быть». Команда, которая делает это, называется cansend.
Я набросал из кода (не иметь ее под рукой) для справки:
def cansend(nodeID,busID,value):
'''sends a CAN frame with a particular value to a specific node'''
class node(object):
def __init__(self,nodeID,busID,operatingMode):
self.nodeID=nodeID
self.busID=busID
self.operatingMode=operatingMode
cansend(self.nodeID,self.busID,operatingMode
Проблема, что у меня есть то, что если я хочу, чтобы изменить режим работы на лету (и я), то мне кажется, что я должен создать отдельную функцию, может быть что-то вроде этого:
def setOperatingMode(self,operatingMode):
cansend(self.nodeID,self.busID,operatingMode)
это кажется немного излишним, чтобы создать эту линию как в методе __init__
и метод setOperatingMode
. Недавно я обнаружил тег @property, но не вижу особо, как его можно использовать здесь, однако я чувствую, что есть лучший способ.
Любые мысли?
Ваша интерпретация была на месте. Большое спасибо – Chris