Verschachtelungen: Der if-Ausdruck in if-Ausdrücken in Python (Verschachtelungen: Der if-Ausdruck in if-Ausdrücken in Python), Lektion, Seite 724087
https://www.purl.org/stefan_ram/pub/if-ausdruck_if-ausdruck_python (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
Python-Kurs

Verschachtelungen: Der if-Ausdruck in if-Ausdrücken in Python 

Ein if-Ausdruck kann auch als Operand in einem anderen if-Ausdruck vorkommen.

Protokoll
f = lambda x: 'Null' if x == 0 else( 'Eins' if x == 1 else 'Zwei' )
Alternative Funktionsdefinition (besserer Stil als die Bindung von lambda-Funktionen an einen gewöhnlichen Bezeichner)
def f( x ):
return 'Null' if x == 0 else \
( 'Eins' if x == 1 else 'Zwei' )
Protokoll
f( 0 )
'Null'
Protokoll
f( 1 )
'Eins'
Protokoll
f( 2 )
'Zwei'

Ein innerer if-Ausdruck muß nicht eingeklammert werden.

Protokoll
f = lambda x: 'Null' if x == 0 else 'Eins' if x == 1 else 'Zwei'
Protokoll
f = lambda x:\
'Null' if x == 0 else\
'Eins' if x == 1 else 'Zwei'
Alternative Funktionsdefinition (besserer Stil als die Bindung von lambda-Funktionen an einen gewöhnlichen Bezeichner)
def f( x ):
return 'Null' if x == 0 else \
'Eins' if x == 1 else 'Zwei'

Übungsaufgaben

/   Übungsaufgabe

Erweitern Sie die Definition von »f«, so daß die Zahlen 0, 1, 2 und 3 in deutsche Wörter umgewandelt werden.

Funktionsdefinition (besserer Stil als die Bindung von lambda-Funktionen an einen gewöhnlichen Bezeichner)
def f( x ):
return 'Null' if x == 0 else \
'Eins' if x == 1 else 'Zwei'

Es dürfen nur die bisher in der Definition verwendeten Sprachelemente verwendet werden (also if-Ausdrücke, Parameternamen, Literale und inverse Schrägstriche).

An Stelle der Definition mit »def f( x ):« darf die Funktion auch mit einer lambda-Bindung definiert werden (was aber als schlechter Stil gilt).

Alternative lambda-Bindung
f = lambda x:\
'Null' if x == 0 else\
'Eins' if x == 1 else 'Zwei'

/   Übungsaufgabe

Schreiben Sie eine Funktion, die einen Parameter hat. Wir gehen davon aus, daß diese Funktion mit einem Argument vom Typ »int« aufgerufen wird.

Wenn der Parameter negativ ist, soll die Zeichenfolge »zu klein« vom Typ »str« zurückgegeben werden.

Wenn der Parameter größer als 130 ist, soll die Zeichenfolge »zu groß« vom Typ »str« zurückgegeben werden.

Sonst soll die Zeichenfolge »akzeptabel« vom Typ »str« zurückgegeben werden.

/   Übungsaufgabe

Schreiben Sie eine Funktion, die den Bediener nach seinem Alter fragt.

Wenn die eingegebene Zahl negativ ist, soll »zu klein« ausgegeben werden.

Wenn die eingegebene Zahl größer als 130 ist ist, soll »zu groß« ausgegeben werden.

Sonst soll die »akzeptabel« ausgegeben werden.

/   Übungsaufgabe

Schreiben Sie eine Definition einer Funktion, die das Maximum ihrer drei ganzzahligen Argumentwerte berechnet, ohne dabei eine andere Funktion aufzurufen.

/   Übersetzen

Falls ein Wort aus der linken Spalte an eine Funktion übergeben wird, soll das Wort zurückgegeben 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 verschachtelte if-Ausdrücke verwenden, um Eingaben aus der linken Spalte zu erkennen und dann gegebenenfalls das entsprechende Wort aus der rechten Spalte als Ergebnis festzulegen, so daß keine weiteren Vergleiche ausgewertet werden, wenn das Wort bereits gefunden wurde.

/   Klassifizieren

Verwenden Sie if-Ausdrücke zur Klassifikation:

Eine Funktion soll für Argumentwerte bis einschließlich 3 den Text „gut“, bis einschließlich 7 den Text „ausreichend“, und für größere Argumentwerte den Text „ungenügend“ zurückgeben.

/   Übungsaufgabe

Schreiben Sie eine Definition einer Funktion, die einen int-Wert als Argument akzeptiert und die ›True‹ ergibt, wenn der int-Wert einer der Werte «1», «2», «3», «4», «5» oder «6» ist. Hierbei dürfen nur die bisher behandelten Sprachelemente verwendet und keine Standardnamen verwendet (keine Standardfunktionen aufgerufen) werden.

 

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 stefanram724087 stefan_ram:724087 Verschachtelungen: Der if-Ausdruck in if-Ausdrücken in Python Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd724087, slrprddef724087, 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-ausdruck_if-ausdruck_python