Licht Klasse gestalten
Verfasst: Samstag 28. November 2020, 22:59
Hallo,
mein kleines Programm läuft zwar, aber ich würde nun gerne den Code optimieren und übersichtlicher machen.
Ich habe folgende Hardware die ich über den Raspi steure:
Lichter
Motoren
Temperaturen
Luftfeuchte
Helligkeit
Ich würden gerne im Code das Licht so ansprechen:
Light.led1.manual.on oder Light.led1.manual = Light.on
Light.led1.manual.off
Light.led1.manual.toggle
...
Dazu habe ich folgendes gefunden:
Also Getter/Setter
Meine Licht Klasse sollte folgende Objekte haben:
led1
led2
led3
led4
led5
led6
led_outdoor
jedes der Lichter hat einen eigenen Wert für:
manual
auto
override
Wenn ich den Modus von "Manual" auf "auto" schalte, aktualisieren die Ausgänge nach den Werten von Auto, usw
Beispiel:
Light.mode.auto
oder
Light.mode = Light.auto
Wie baut man grob so eine Klasse?
Herzlichen Dank!
mein kleines Programm läuft zwar, aber ich würde nun gerne den Code optimieren und übersichtlicher machen.
Ich habe folgende Hardware die ich über den Raspi steure:
Lichter
Motoren
Temperaturen
Luftfeuchte
Helligkeit
Ich würden gerne im Code das Licht so ansprechen:
Light.led1.manual.on oder Light.led1.manual = Light.on
Light.led1.manual.off
Light.led1.manual.toggle
...
Dazu habe ich folgendes gefunden:
Code: Alles auswählen
Class P:
def __init__(self,x):
self.__x = x
def __getX(self):
return self.__x
def __setX(self, x):
self.__x = x
x = property(__getX, __setX)
Code: Alles auswählen
>>> from p import P
>>> a = P(19)
>>> b = P(10)
>>> c = a.x + b.x
>>> c
29
led1
led2
led3
led4
led5
led6
led_outdoor
jedes der Lichter hat einen eigenen Wert für:
manual
auto
override
Wenn ich den Modus von "Manual" auf "auto" schalte, aktualisieren die Ausgänge nach den Werten von Auto, usw
Beispiel:
Light.mode.auto
oder
Light.mode = Light.auto
Wie baut man grob so eine Klasse?
Herzlichen Dank!