Ich bin noch recht neu in Python und bräuchte mal einen Lösungsansatz.
Ich bin dabei eine Funktion zu schreiben an die ich ein Kommando übergeben möchte. Diese Kommandos/Eingaben müssen dann von der Funktion erkannt und ausgewertet werden. Dazu können Parameter in dem String variieren.
Als Beispiel:
Ich habe eine Kommandoliste die meine Funktion kennt. Sagen wir 'How are you?', 'status', 'make 1 picture', ...
Aktuell erkenne ich die Kommandos mit einer IF Abfrage.
Code: Alles auswählen
command = str(sms['TextDecoded']).lower()
if command == "how are you?":
sms_send_sms(sms['SenderNumber'], bob.bob_say_hello())
elif command == "status":
sms_send_sms(sms['SenderNumber'], bob.bob_status())
elif command == "make 1 picture":
file = pi_camera.make_picture_camera1(mysql, cursor, config, 0, 0, 0, 1)
sms_send_sms(sms['SenderNumber'], "I made 1 picture. File name: %s" % file)
else:
return false
Und die wichtigere Frage: Wie kann ich 'make 1 picture' parsen... so das ich auch als Kommando 'make 3 pictures' eingeben kann und die Anzahl der Bilder parsen kann. Ich für spontan auf regex tippen. Aber wie? Und gibt es vielleicht eine andere Lösung als regex.
Dank für eure Hilfe.
Viele Grüße
HeAdLeSs