[Python] Alarm-Mail bei Low/High Temp

  • 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

    Edited once, last by ghoethe ().

  • 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?

    Edited once, last by ghoethe ().

  • 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?

    Edited once, last by ghoethe ().

  • 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

  • weil er web.de und ich google nutze, und google über nen aderen port geht, deshalb hab ich versucht das zu kombinieren, jetzt klappts :)

  • Oben bei Import nicht richtig kopiert :/
    [hr]
    Kann den Code morgen nochmal hier posten, bin grad auf Arbeit



    Edited once, last by ghoethe ().