[Python] Alarm-Mail bei Low/High Temp

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hier mein zusammengestückelter code, geht leider nicht zusammen :(

    im letzten abschnitt soll er bei : [font="Monaco"] if (cur_temp > alarm_hi) or (cur_temp < alarm_lo):[/font]
    [font="Monaco"]die mail abschicken, mit Textinhalt cur_temp[/font]

    [font="Monaco"]klappt net und er meint ab: msg = .. --> IndentatioError: expected an indented block[/font]

    [font="Monaco"]Wenn ich jedoch an dieser stelle nen extra python file aufrufe mit inhalt senden[/font]
    [font="Monaco"]script2run = "/home/pi/temp-alarm/send.py"
    execfile( script2run )
    [/font]

    [font="Monaco"]klappt es, aber nur statisch. ich möchte in der mail auch gerne die aktuelle Temperatur als text haben.[/font]



    ich hoffe ihr könnt mir weiterhelfen?

    mfg Ghoethe

    Einmal editiert, zuletzt von ghoethe (7. August 2013 um 13:57)

  • zuerst einmal solltest du nie Quellcode mit PW veröffentlichen
    zu deinem Fehler:
    Python achtet sehr genau auf die Zeileneinrückung
    alles nach dem
    if (cur_temp > alarm_hi) or (cur_temp < alarm_lo): bis zum else gehört eingerückt

  • Danke, hatte vorher noch gedacht: wenn ich das einstelle drauf zu achten das pw nich da steht...

    Guter tip, heut Abend mal ausprobieren. Wusste nicht das Python sich an Einrückungen hält.
    Muss dann auch die Leerzeile weg und nen zweites Else noch dazu?

    Einmal editiert, zuletzt von ghoethe (7. August 2013 um 14:03)

  • also wenn ich das mit den Einrückungen mache bekomme ich jetzt folgendes:


    heißt das, das python nicht richtig installiert is bzw. andere variable erwartet?

    Einmal editiert, zuletzt von ghoethe (8. August 2013 um 22:58)

  • Wieso hast du denn das bereits veraltete python 2.7 installiert?
    Hast du das installiert?

    Aktuell wäre eigentlich python3

    Code
    apt-get update
    apt-cache search python | grep ^python3

    Würde spontan vermuten das dein Script für 3.x geschrieben ist, aber weil das leider nicht vollständig abwärtskompatible ist versucht es funktionen aufzurufen die 2.7 noch nicht kennt


    /EDIT: Ich versteh aber gerade auch nicht so richtig wieso dein python Script sich so arg vom Original unterscheidet - wieso benutzt du nicht das Original? http://www.hoeser-medien.de/?p=779

  • Oben bei Import nicht richtig kopiert :/

    Kann den Code morgen nochmal hier posten, bin grad auf Arbeit


    Einmal editiert, zuletzt von ghoethe (8. August 2013 um 23:55)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!