Logo des digitalen Schulbuchs inf-schule.de. Schriftzug in Zustandsübergangsdiagramm eines endlichen Automaten.

Fachkonzept - Wahrheitswerte

Datentyp Wahrheitswerte

Wahrheitswerte spielen bei der Auswertung von Bedingungen eine zentrale Rolle. Eine Bedingung ist dabei wahr oder falsch (oder nicht auswertbar, wenn Variablen noch keinen Wert haben).

Der Datentyp Wahrheitswerte beschreibt die Menge {True, False} der Wahrheitswerte zusammen mit den Operatioren not, and und or, die man mit Wahrheitswerten ausführen kann.

In Python wird der Datentyp Wahrheitswerte mit bool bezeichnet.

Das Verhalten der logischen Operatoren wird mit Wahrheitstafeln festgelegt.

not-Operator

A not A
False True
True False

and-Operator

A B A and B
False False False
False True False
True False False
True True True

or-Operator

A B A or B
False False False
False True True
True False True
True True True

Terme vom Typ Wahrheitswerte

Terme vom Typ Wahrheitswerte spielen eine zentrale Rolle bei der Beschreibung von Bedingungen.

Bedingungen werden durch logische Berechnungsausdrücke (d.h. Terme vom Datentyp Wahrheitswert) dargestellt.

Wie solche Terme aufgebaut sein können, soll im Folgenden anhand einfacher Beispiele aufgezeigt werden.

Häufig werden Bedingungen mit Vergleichsoperatoren gebildet.

Beispiel:

# Eingabe
zahl  = int(input('Zahl: '))
# Verarbeitung und Ausgabe
if zahl % 2 == 0:
    print(zahl, 'ist gerade.')
else:
    print(zahl, 'ist ungerade.')

Mehr über Vergleichsoperatoren und ihre Darstellung in Python findest du weiter unten.

Zusammengesetzte Bedingungen erhält man, wenn man Bedingungen mit Hilfe logischer Operatoren verknüpft.

Beispiel:

# Eingabe
zahl  = int(input('Zahl: '))
# Verarbeitung und Ausgabe
if (zahl % 2 == 0) and not (zahl % 3 == 0):
    print(zahl, 'ist durch 2, aber nicht durch 3 teilbar.')

Bedingungen können auch logische Variablen enthalten. Logische Variablen sind Variablen, die einen Wahrheitswert verwalten.

Beispiel:

# Eingabe
zahl  = int(input('Zahl: '))
# Verarbeitung 
istNull = (zahl == 0)
istPositiv = (zahl > 0)
# Ausgabe
if not (istNull or istPositiv):
    print(zahl, 'ist negativ.')

Eine Bedingung kann auch nur aus einer logischen Variablen bestehen.

Beispiel:

# Eingabe
zahl  = int(input('Zahl: '))
# Verarbeitung 
istNull = (zahl == 0)
istPositiv = (zahl > 0)
istNegativ = not (istNull or istPositiv)
# Ausgabe
if istNegativ:
    print(zahl, 'ist negativ.')

In Bedingungen können zudem logische Funktionen vorkommen. Das sind Funktionen, die ein Ergebnis vom Typ Wahrheitswert zurückliefern.

Beispiel:

def istGerade(zahl):
    ergebnis = (zahl % 2 == 0)
    return ergebnis

# Eingabe
zahl  = int(input('Zahl: '))
# Ausgabe
if istGerade(zahl):
    print(zahl, 'ist gerade.')

Vergleichsoperatoren

Die folgende Tabelle zeigt, wie man Objekte miteinander vergleichen kann.

Operator Bedeutung Vergleich Ergebnis
== gleich 4 == 3 False
!= ungleich 'w' != 'W' True

Beachte den Unterschied zwischen dem Zuweisungszeichen = und dem Gleichheitszeichen ==.

Für numerische Datentypen (d.h. int, float und bool) gibt es weitere Operatoren zum Größenvergleich:

Operator Bedeutung Vergleich Ergebnis
< kleiner 2 < 1 False
> größer 4 > 2 True
<= kleiner oder gleich 3 <= 3 True
>= größer oder gleich 3 >= 4 False
X

Fehler melden

X

Suche