Zum Inhalt

Bedingte Logik

Bedingte Logik

if, elif, else

  • „if“ führt Code aus, wenn die Bedingung wahr ist.
  • Wenn „if“ False ist, prüft „elif“ die Bedingungen der Reihe nach (es können mehrere „elif“-Anweisungen vorhanden sein).
  • „else“ wird nur ausgeführt, wenn alle vorherigen Bedingungen falsch sind.

Schecks kombinieren

  • Verwenden Sie „und“, „oder“, „nicht“, um Bedingungen zu kombinieren.

Wahr und falsch

  • In Python gelten die meisten Werte als wahr.
  • Ausnahmen (als falsch betrachtet): „Keine“, „Falsch“, Zahlen gleich Null und leere Datentypen („[]“, „{}“, „“ usw.).
is_old = 'hello'            # truthy
is_licensed = 0             # falsy

print(bool(is_old))         # True
print(bool(is_licensed))    # False


if is_old and is_licensed:              #if true and true print code
    print('you can drive now')
elif is_licensed:                       #elif print this
    print('you can\'t')
else:                                   #else print this
    print('you can\'t')

Ternärer Operator (Bedingter Ausdruck)

Eine Kurzform zum Schreiben bedingter Logik. Syntax: value_if_true, wenn Bedingung, sonst value_if_false Unterstützt elif nicht.

is_friend = False
can_message = 'message allowed' if is_friend else "not allowed to message"

print(can_message)

Kurzschluss

Python beendet die Auswertung logischer Ausdrücke, sobald das Ergebnis ermittelt wurde.

  • Mit oder: stoppt beim ersten True.
  • Mit und: stoppt beim ersten False

– Der Rest des Ausdrucks wird nicht unnötig ausgewertet.

Die Verwendung von „or“ → stoppt, wenn das erste True gefunden wird

x = True or print("This won't run")    #(nothing printed, because True is enough to decide result)

Die Verwendung von „und“ → stoppt, wenn das erste False gefunden wird

y = False and print("This won't run")   #(nothing printed, because False is enough to decide result)

keine Operatoren

– Gibt den entgegengesetzten booleschen Wert zurück.

print(not False)
print(not True)

== vs ist

  • == prüft die Wertgleichheit
  • prüft die Objektidentität (gleiche Speicherreferenz)

(ist) prüft, ob sich dies im selben Speicherbereich, im selben Bücherregal wie dieses befindet

print(True is 1)    #checks for exact same thing, located in different memory space

print(True == 1)    #checks for the values

Logischer Operator

  • <, >, ==, >=, <=, !=
  • und, oder, nicht, ist – Wird in der bedingten Logik zur Steuerung des Programmflusses verwendet.

In Python lassen sie das Programm Zeilen überspringen oder ausführen, je nachdem, ob die Bedingungen wahr oder falsch sind.

Walross-Operator(:=)

– Weist Werte innerhalb von Ausdrücken zu. - etwas basierend auf einer Bedingung tun und diesen Wert dann erneut berechnen.

a = 'hellooooooo'

if (n := len(a)) > 10:
    print(f'the elements {n} are too long')
while ((n:= len (a)) > 1):
    print(n)
    a = a[:-1]
print(a)