mein erstes Python Skript
Verfasst: Dienstag 18. Dezember 2018, 19:55
Liebe Foren Gemeinde,
nach dem ich nun seit heute morgen 09:00 meinen Urlaub mit meinem ersten Python Skript verbringe und nicht weiterkomme, so möchte ich euch gerne um Rat fragen.
Bitte seit nachsichtig ich bin neu in Python, das Thema hab ich generell schon etwas länger auf dem Schirm, der Ursprungs Thread ist hier:
https://knx-user-forum.de/forum/support ... e-py/page2
Es geht um ein Smarthome, im welchen ein Skript eine Aktion zwischen zwei bestimmten Uhrzeiten nur Mo. - Fr. ausführen soll. Später kommt noch hinzu, das die Aktion nur 1x pro Tag ausgeführt werden soll.
Wenn ich den Code ausführe dann funktioniert alles:
Wie oben im Code geschrieben, wird zwischen 06:00 und 22:00 Uhr die Deckenlampe im Flur oben für 5 Sekunden eingeschaltet und dann wieder ausgeschaltet, wenn jemand die Deckenlampe im Flur unten anschaltet.
Nun möchte ich dies in der nächsten Stufe aber auf die Tage: Mo-Fr beschränken - also nicht am Wochenende.
Hierzu sollte folgender Code dienen, welcher aber aktuell nicht funktioniert:
Bis zu dem print (now) funktioniert es wunderbar, aber der Code welcher vorher oben funktionierte wird anscheinend nicht ausgeführt. Wo liegt hier mein Fehler? Nach so vielen Try and Error versuchen komm ich einfach nicht weiter.
Viele Grüße
Jannis
nach dem ich nun seit heute morgen 09:00 meinen Urlaub mit meinem ersten Python Skript verbringe und nicht weiterkomme, so möchte ich euch gerne um Rat fragen.
Bitte seit nachsichtig ich bin neu in Python, das Thema hab ich generell schon etwas länger auf dem Schirm, der Ursprungs Thread ist hier:
https://knx-user-forum.de/forum/support ... e-py/page2
Es geht um ein Smarthome, im welchen ein Skript eine Aktion zwischen zwei bestimmten Uhrzeiten nur Mo. - Fr. ausführen soll. Später kommt noch hinzu, das die Aktion nur 1x pro Tag ausgeführt werden soll.
Wenn ich den Code ausführe dann funktioniert alles:
Code: Alles auswählen
#!/usr/bin/env python3
# zirkulation_test.py
import time
now = time.strftime("%H:%M:%S")
if sh.Lampen.Flur_unten.Deckenlampe.schalten():
now = time.strftime("%H:%M:%S")
timewindow1_ok = ("06:00:00") <= now < ("22:00:00")
if timewindow1_ok:
sh.Lampen.Flur_oben.Deckenlampe.schalten('on')
time.sleep(5)
sh.Lampen.Flur_oben.Deckenlampe.schalten('off')
time.sleep(2)
Nun möchte ich dies in der nächsten Stufe aber auf die Tage: Mo-Fr beschränken - also nicht am Wochenende.
Hierzu sollte folgender Code dienen, welcher aber aktuell nicht funktioniert:
Code: Alles auswählen
#!/usr/bin/env python3
# zirkulation_test.py
import time
import datetime
now = time.strftime("%H:%M:%S")
day = time.strftime("%a")
if not any([char == day for char in ["Mon","Tue","Wed","Thu","Fri"]]):
print ("Es ist Wochenende")
else:
print (day)
print (now)
if sh.Lampen.Flur_unten.Deckenlampe.schalten():
now = time.strftime("%H:%M:%S")
timewindow1_ok = ("06:00:00") <= now < ("22:00:00")
if timewindow1_ok:
sh.Lampen.Flur_oben.Deckenlampe.schalten('on')
time.sleep(5)
sh.Lampen.Flur_oben.Deckenlampe.schalten('off')
time.sleep(2)
Viele Grüße
Jannis