CodeGym /Kurse /Python SELF DE /Arbeiten mit dem booleschen Typ

Arbeiten mit dem booleschen Typ

Python SELF DE
Level 5 , Lektion 5
Verfügbar

5.1 Typ bool

In Python gibt es einen speziellen booleschen Datentyp, mit dem man die Wahrheit von Bedingungen und Ausdrücken überprüfen kann. Es wird durch das Schlüsselwort bool (eigentlich heißt es Boolean) bezeichnet und wird verwendet, um einen von zwei Werten darzustellen: True (Wahr) oder False (Falsch).

Dieser Datentyp ist extrem nützlich in der Programmierung, um den Ausführungsfluss einer Anwendung mittels bedingter Anweisungen wie if, else und elif sowie zur Steuerung von Schleifen und anderen Kontrollstrukturen zu steuern.

Wichtiger Hinweis

Der boolesche Datentyp in Python ist durch zwei konstante Objekte dargestellt: True und False. Es ist jedoch wichtig zu beachten, dass Python True als numerischen Wert 1 und False als 0 betrachtet. Dies ermöglicht ihre Verwendung in arithmetischen Operationen und macht den Typ bool zu einer Unterklasse des Typs int.

Praktische Anwendung

Trotz der Tatsache, dass es nur zwei mögliche Werte gibt, liegt die Stärke des bool Typs nicht in seinen Werten selbst, sondern in der Menge an logischen Operationen, die mit ihnen durchgeführt werden können. Mehr dazu weiter unten.

5.2 Logische Operatoren

Logische Operationen in Python spielen eine wichtige Rolle bei der Steuerung der Ausführungsreihenfolge von Programmen und der Entscheidungsfindung. Die Hauptlogischen Operationen umfassen and, or und not. Das Verständnis ihrer Anwendung kann die Effizienz deines Codes erheblich verbessern.

Logisches UND (AND)

Der Operator and gibt True nur zurück, wenn beide seiner Argumente wahr sind (True). Dieser Operator wird häufig verwendet, um die Wahrheit mehrerer Bedingungen gleichzeitig zu prüfen.


a = True
b = False
print(a and b)  # Gibt aus: False 

Logisches ODER (OR)

Der Operator or gibt True zurück, wenn mindestens eines seiner Argumente wahr ist. Dies ist nützlich für Bedingungen, bei denen der Code ausgeführt werden soll, wenn mindestens eine von mehreren möglichen Bedingungen erfüllt ist.


a = True
b = False
print(a or b)  # Gibt aus: True

Logisches NICHT (NOT)

Der Operator not invertiert den booleschen Wert seines Arguments. Wenn das Argument True ist, wird das Ergebnis False sein und umgekehrt. Dies kann nützlich sein, um Negationsbedingungen zu erstellen.


a = True
print(not a)  # Gibt aus: False

Erweiterte Nutzung

Logische Operatoren werden oft in Kombination verwendet, um komplexe Bedingungsausdrücke zu erstellen, die bei der Steuerung komplexerer Ausführungsströme helfen.


a = 5
b = 10
c = 20
result = a < b and b < c  # Überprüft, ob a kleiner als b und b kleiner als c ist
print(result)  # Gibt aus: True

Logische Operationen in Python bieten ein leistungsstarkes Instrument zur Steuerung des Verhaltens eines Programms basierend auf verschiedenen Bedingungen. Sie vereinfachen nicht nur das Schreiben von Code, sondern machen ihn auch lesbarer und pflegbarer.

5.3 Praktische Beispiele

Python erlaubt es, andere Datentypen mit der Funktion bool() in den booleschen Typ zu konvertieren. Standardmäßig wird jeder nicht-null oder nicht-leeren Wert in True umgewandelt, während null- oder leere Werte in False umgewandelt werden.

Beispiele für Typkonvertierung:


print(bool(0))  # Gibt aus: False 
print(bool(42))  # Gibt aus: True
print(bool(""))  # Gibt aus: False
print(bool("Text"))  # Gibt aus: True

Verwendung von booleschen Variablen in Bedingungen:


a = 5
b = 10
c = 20
is_a_min = a < b and a < c  # Überprüft, dass a kleiner als b und a kleiner als c ist 
print(is_a_min)  # Gibt aus: True

Eine boolesche Variable muss nicht mit True oder False verglichen werden, da das Ergebnis des Vergleichs bereits True oder False ist. Ein Beispiel:

Startcode Startcode in eine separate Variable ausgelagert == True entfernt

if a < b:
    print("a ist min")

                    is_a_less = a < b
                    if is_a_less == True:
                        print("a ist min")              
                

                    is_a_less = a < b
                    if is_a_less:
                        print("a ist min")               
                

Das Ergebnis jedes Vergleichs ist True oder False, daher kann es einer Variablen zugewiesen werden – wie im obigen Beispiel gezeigt. Aber in der Bedingung if oder in Schleifen while muss die boolesche Variable nicht mit True verglichen werden. Die boolesche Variable enthält bereits den richtigen Wert. Gib ihr einfach einen passenden Namen, und alles wird klarer.

Mit anderen Worten, anstelle von «if a == True:» sollte man einfach «if a:» schreiben. Und anstelle von «if a == False:» sollte man «if not a:» schreiben.

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION