Anfänger: bei os.system(): expected an indented block

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo.

    Ich möchte bei Knopfdruck ein Bash-Script ausführen lassen.
    Leider kenne ich mich in Python fast garnicht aus.

    Habe duch ein paar Tutorials folgendes zusammmengeragen:

    doch immer wen ich es ausführe kommt:

    Code
    File "Schalter.py", line 12
        os.system("sh/home/pi/Programme/Programm.sh")
         ^
    IndentationError: expected an indented block

    Könntet ihr meinen code berichtigen?

    :danke_ATDE:

    LG. AltBen

    Ich bin root! Ich darf das! :D


    Diese Signatur könnte jetzt sinnvoll sein ... ist sie aber nicht! :denker:

    Einmal editiert, zuletzt von AltBen (18. August 2013 um 12:25)

  • Anfänger: bei os.system(): expected an indented block? Schau mal ob du hier fündig wirst!

  • Hallo AltBen,

    nach dem "if" muss mindestens die nächste Zeile eingerückt werden.

    Gruß Georg

  • Hallo,
    ich habe ein kleines Problem, wenn ich mein Programm(
    #!/usr/bin/python3
    # Datei add.py
    import RPi.GPIO as GPIO
    from functions import *
    db = DB()
    print("Neuer Zugangsberechtigter\n")
    print("Transponder einlesen...\n")
    id = readrfid()
    name = input("Name eingeben: ")
    try:
    db.add_user(id,name)
    print ("Neuer Datensatz angelegt")
    except:
    print ("Fehler beim Schreiben")
    db.close_db()
    in der shell starte erhalte ich folgende Meldung:
    Neuer Zugangsberechtigter
    Transponder einlesen...
    Traceback (most recent call last):
    File "/home/pi/techniker/Test1/add.py", line 8, in <module>
    id = readrfid()
    TypeError: readrfid() takes exactly 2 arguments (0 given)
    >>> Kann mir dafür jemand eine Erklärung liefern, damit ich dies verstehe?
    Vielen Dank
    im voraus
    Detlef

  • Hi Detlef, zunächst solltest du code als Code formatieren. Ist besser zu lesen und einfacher zu helfen :)

    Die Fehlermeldung sagt das wichtige: TypeError: readrfid() takes exactly 2 arguments (0 given)

    die Methode readrfid will 2 Argumente und du gibst ihr nur 0 --> readrfid(argument1,argument2) müsste gehen. Da ich die methode nicht kenne, weis ich nicht welche argumente das sind. Findest du aber sicher leicht raus :)

Jetzt mitmachen!

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