Kapitel 5
Entscheidungen treffen
Lerne boolesche Werte kennen
Ein Programm, das immer dieselben Anweisungen ausführt, kann nützlich sein. Es reagiert aber viel flexibler, wenn es eine Frage zu seinen aktuellen Daten stellen und entscheiden kann, was als Nächstes passiert.
Python stellt die Antwort auf eine Ja-Nein-Frage mit einem booleschen Wert dar. Es gibt genau zwei boolesche Werte:
True
False
Der Typ heißt bool, kurz für Boolean. Der Name ehrt George Boole, dessen Arbeit dazu beitrug, Logik mit zwei möglichen Werten formal zu beschreiben.
Boolesche Werte in Variablen
Du kannst einen booleschen Wert wie einen String oder eine Zahl in einer Variablen speichern:
Die Ausgabe lautet:
True
False
Die Großbuchstaben sind wichtig. Pythons boolesche Werte schreibt man True und False, nicht true und false.
Auch Anführungszeichen machen einen Unterschied. True ist ein boolescher Wert, während "True" ein String mit vier Zeichen ist.
Mit type() kannst du den Unterschied anzeigen lassen:
Der erste Wert hat den Typ bool, der zweite den Typ str.
Vergleiche erzeugen boolesche Werte
Die meisten booleschen Werte in einem Programm entstehen aus Fragen über andere Daten. Python nennt solche Fragen Vergleiche.
Betrachte diesen Ausdruck:
temperature < 20
Er fragt, ob der aktuelle Wert von temperature kleiner als 20 ist. Python wertet den Ausdruck aus und erzeugt entweder True oder False.
Führe ihn mit zwei unterschiedlichen Temperaturen aus:
Der erste Vergleich ergibt True, der zweite False.
Ein Vergleich gibt von selbst nichts aus. In diesem Beispiel macht print() den entstandenen booleschen Wert sichtbar. Du kannst das Ergebnis auch speichern:
Python wertet zuerst age < 30 aus und weist dann den entstandenen booleschen Wert is_under_30 zu.
Welcher Wert hat den Typ bool?
Was gibt dieser Code aus?
available_places = 3
print(available_places < 2)Werte, die Entscheidungen steuern
Ein boolescher Wert hält eine von zwei Möglichkeiten fest: ja oder nein, an oder aus, wahr oder falsch. In den nächsten Lektionen lernst du die Vergleichsoperatoren kennen, die solche Werte erzeugen. Danach steuerst du damit, welche Anweisungen Python ausführt.
Behalte für diese Lektion die zentrale Idee im Blick: Ein Vergleich ist ein Ausdruck, und sein Ergebnis ist ein boolescher Wert.
Aufgabe
Führe die Beispiele aus und beantworte beide Wissenschecks. Prüfe vor dem Weitergehen, ob du erklären kannst:
warum
Trueund"True"unterschiedliche Typen haben;warum derselbe Vergleich ein anderes Ergebnis liefern kann, wenn sich eine Variable ändert;
warum ein Vergleich ein Ausdruck mit einem Wert ist.