Die if-Anweisung in Python (Die if-Anweisung in Python), Lektion, Seite 723919
https://www.purl.org/stefan_ram/pub/if-anweisung_python (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
Python-Kurs

Die if-Anweisung in Python 

Bei der Ausführung einer if-Anweisung wird zunächst ihr Ausdruck ausgewertet.

main.py
if print( 0 ):
print( 1 )
Ausgabe
0

Der Wert des Ausdrucks wird dann – wie mit dem aufrufbaren Objekt »bool« (siehe Lektion 14.5.) – nach »bool« gewandelt. Genau dann, falls sich bei dieser Wandlung der Wert »True« ergibt, wird die Suite der if-Anweisung ausgeführt.

Daher nennen wir diesen Ausdruck auch die Bedingung  und die Suite die Konsequenz.

Aufbau einer if-Anweisung
     .--.     .-----------.     .-.     .------------.
--->( if )--->| Ausdruck |--->( : )--->| Suite |--->
'--' '-----------' '-' '------------'
Bedingung Konsequenz

Wir zeigen einige einfache Beispiele:

Protokoll
if False:
print( 14 )
print( 15 )

(keine Ausgabe)
Protokoll
if True:
print( 14 )
print( 15 )
14
15
Protokoll

if 'alpha':
print( 'beta' )

beta
Protokoll

if 'False':
print( 'True' )

True
Protokoll
if 12 - 18 + 6:
print( 'abc' )

(keine Ausgabe)

Bei der Eingabe in die Konsole wird mit der Ausführung einer eingegebenen if-Anweisung erst begonnen, wenn alle ihre Zeilen vollständig eingegeben wurden, was die Konsole an der Eingabe einer Leerzeile  am Ende der if-Anweisung erkennt.

PEP 8

Zitat aus PEP 8
Don't compare boolean values to True or False using ==.
Yes: if greeting:
No: if greeting == True:
Hinweis
Der korrekte Name des Datentyps lautet »bool« – nicht »boolean«.

Die einzeilige if-Anweisung

Wie bei einer Funktionsdefinition, so kann auch bei der if-Anweisung eine semikolongetrennt Folge von Anweisungen direkt hinter den Doppelpunkt in dieselbe Zeile geschrieben werden. Dann bilden jene Anweisungen die Suite. Die if-Anweisung besteht bei Verwendung dieser Schreibweise aus einer Zeile und kann nicht in weiteren Zeilen fortgesetzt werden.

ℛ Stilregel Die mehrzeilige if-Anweisung, bei der die Suite in einer neuen Zeile beginnt, gilt in Python  als besserer Stil  verglichen mit dem Schreiben der Suite in die Zeile, welche mit »if« beginnt.

Übungsfragen

?   Übungsfrage 0

Was ist die Ausgabe des folgenden Programms (also der folgenden Eingabe in die Python -Implementation)?

Programm
if print( 'abc' ):
pass


?   Übungsfrage 1

Was ist die Ausgabe des folgenden Programms?

Programm
if print( 'abc' ):
print( 'def' )


?   Übungsfrage 2

Was ist die Ausgabe des folgenden Programms?

Programm

if 'abc':
print( 'def' )

Übungsaufgaben

/   Übungsaufgabe

Falls in ein Programm ein Wort aus der linken Spalte eingegeben wird, soll das Wort ausgegeben werden, das sich in derselben Zeile in der rechten Spalte befindet.

Tabelle der Eingaben und Ausgaben
Tisch    table
Haus house
Sonne sun
Erde earth

Dieses Programm soll if-Anweisungen verwenden, um Eingaben aus der linken Spalte zu erkennen und dann gegebenenfalls das entsprechende Wort aus der rechten Spalte auszugeben.

/   Verschachtelungen

main.py
if True:
print( 14 )

Schreiben Sie eine Definition einer Funktion »f«, welche als Suite nur die obige if-Anweisung enthält, und rufen Sie diese Funktion dann zweimal auf. Es müßte dann die folgende Ausgabe entstehen.

erwartete Ausgabe
14
14

Anwendungsbeispiel ⃗

Das folgende Beispiel zeigt eine Analyse der Bevölkerung der Bundesrepublik vom 2011-05-09. (Quelle: »http://www.statistik.bremen.de/sixcms/media.php/13/StatistischeMitteilungen_116.pdf«).

Programm

personen = 80_219_695
weiblich = 41_066_140
männlich = 39_153_540


if weiblich + männlich == personen:
print( "weiblich + männlich == personen" )


if weiblich + männlich != personen:
print( "weiblich + männlich != personen" )


if weiblich + männlich < personen:
print( "weiblich + männlich < personen" )

 

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram723919 stefan_ram:723919 Die if-Anweisung in Python Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd723919, slrprddef723919, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/if-anweisung_python