If nach If

  • Also ich will wissen wie ich die else's zuweisen
    also
    if Bedingung eins erfüllt:
    if Bedingung zwei erfüllt:
    print "ja suppaa!"
    else
    print "See ya lata aligator!"
    else
    print "See ya lata aligator!"
    und ausserdem wenn ich eine variable setzen will mit einem API command kommt ein IndentError
    Also hier der Fehler

    Quote

    File "random.py", line 5
    a=rnumlistwithreplacement(1, 99, 1)
    ^
    IndentationError: expected an indented block

  • [code=php]if (Bedingung eins erfüllt) and (Bedingung zwei erfüllt):
    print "ja1"
    elif (oder Bedingung drei erfüllt):
    print "ja2"
    else:
    print "nein"
    [/php]

    Also hier der Fehler

    ..Falsche Einrückung..

  • Hi,

    so wirklich klar ist mir auch nach dem fünften durchlesen nicht, was Du erreichen möchtest.

    Wenn Du zwei Bedingungen prüfen und eine Anweisung dadurch anleiten willst, musst Du die If-Anweisungen mit dem Operator "and" verbinden:

    [code=php]If [Bedingung 1] and [Bedingung 2]:
    print("Beide Bedingungen erfüllt")

    else:
    print("Mindestens eine oder gar keine Bedingung erfüllt")

    [/php]

    Für mehrere Prüfungen könnte man so vorgehen:

    if [Bedingung 1]

    elif [Bedingung 2]

    else [Bedingung 3]

    Mehrere else-Blöcke gibt es nicht. Else tritt immer für "alle übrigen" Anweisungen ein.

    Mfg,

    sls


  • Hi,

    so wirklich klar ist mir auch nach dem fünften durchlesen nicht, was Du erreichen möchtest.

    Wenn Du zwei Bedingungen prüfen und eine Anweisung dadurch anleiten willst, musst Du die If-Anweisungen mit dem Operator "and" verbinden:

  • Hi,

    poste doch mal bitte Deinen Code. Das würde das Problem mit der Einrückung vereinfachen. So müsste man raten.

    Mfg

  • Also der Code ist


    Meine Frage ist: Kann ich das IF auch so machen

    Code
    if a>b and a>c OR a<b and a<c

    also er soll eine 1 in eine Datei schreiben wenn a größer als b und c ist oder a kleiner als b und c ist.

  • Hallo TheOverclocker,
    muss der Code nicht so aussehen?

    Mal davon abgesehen, dass die verschachtelten if's reichlich eigenartig wirken.

    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • [/code]
    Meine Frage ist: Kann ich das IF auch so machen

    Code
    if a>b and a>c OR a<b and a<c

    also er soll eine 1 in eine Datei schreiben wenn a größer als b und c ist oder a kleiner als b und c ist.

    Hi,

    siehe bootsmann's Beitrag. Wenn Du Dir unsicher bist, ob ein Programmteil überhaupt funktioniert, schreibe diesen Teil in ein gesondertes Programm:

    Entweder probierst Du die if-Bedingung in der Shell, weil das sehr zügig funktioniert, möchtest Du das Skript mit mehreren Varianten prüfen, wie angeschnitten im neuen Programm:

    [code=php]
    # Variablen deklarieren
    a = 2
    b = 1
    c = 1

    # Prüfen ob Bedingungen zutreffen
    if a > b and a > c or a < b and a < c:
    print "Mindestens eine Bedingung erfüllt"

    else:
    print "Keine Bedingung erfüllt"[/php]


    Vorteil im Extraskript: Du kannst die Variablen einfach abändern um die zweite Bedingung (<) ebenfalls zu prüfen.


    Wenn Du die If-Bedingung schon selbst geschrieben hast, probier sie einfach aus, und Du wirst sehen dass es funktioniert. Wenn nicht, kann man immernoch fragen ;)

    Mfg,

    sls

    Edited once, last by CrimsonMoon28021 (June 10, 2015 at 6:01 PM).

  • Das hab ich jetzt


    Also eine Frage: Muss die API in den gleichen Ordner?

  • Ich hab nen Api Error er findet die Funktionen nicht..
    Traceback (most recent call last):
    File "random2.py", line 6, in <module>
    a = rnumlistwithreplacement(1, 99, 1)
    NameError: name 'rnumlistwithreplacement' is not defined

  • ich frag mal, weil es mich verwirrt.

    warum importierst du API und nutzt es nicht und was ist rnumlistwithreplacement

    Edit: siehste, hast selber gemerkt ;) ist rnumlistwithreplacement eine funktion die im api modul enthalten ist? Wenn ja, dann

    Code
    a = api.rnumlistwithreplacement(1, 99, 1)

    Der Unterschied zwischen Genie und Wahnsinn definiert sich im Erfolg.

    Edited once, last by dbv (June 10, 2015 at 8:49 PM).

  • Danke! Nur jetzt hat er diese Fehler :(
    Traceback (most recent call last):
    File "random2.py", line 10, in <module>
    subprocess.call("./eins.sh")
    File "/usr/lib/python2.7/subprocess.py", line 493, in call
    return Popen(*popenargs, **kwargs).wait()
    File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
    errread, errwrite)
    File "/usr/lib/python2.7/subprocess.py", line 1259, in _execute_child
    raise child_exception
    OSError: [Errno 13] Permission denied
    mit set -x siehst so aus


  • Dat is es!11111elf

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!