next up previous
Nächste Seite: Klassen und Objekte Aufwärts: Die Programmiersprache Python Vorherige Seite: Ausnahmen

Unterabschnitte

Funktionen

Definitionen von Funktionen:

def name(parameterliste):
     "Dokumentationsstring" 
     anweisungssequenz
>>> def fak(n):
...     "Liefert die Fakultaet"
...     if n:
...         return n * fak(n - 1)
...     else:
...         return 1
...
>>> fak(3)
6

Default-Argumente

Es ist möglich Default-Argumente festzulegen:
 
>>> def poly(a = 1, b = 1, c = 1, x = 0):
...     return a*(x**2) + b*x + c
...
>>>
Default-Argumente müssen nicht unbedingt hinten stehen (wie in C++). Folgender Funktionsaufruf ist also möglich:
>>> poly(x=2)
7

Variable Parameterlisten

Variable Parameterlisten (Unspezifizierte Anzahl von Argumenten):
>>> def mittel(*values):
...     sum = 0
...     for i in values:
...         sum = sum + i
...     return sum / len(values)
...
>>> mittel(1.0, 2.0, 3.0, 4.0)
2.5

Wichtige eingebaute Funktionen

map(F, L) ruft für jedes Element der Liste L die Funktion F auf und liefert die Rückgabewerte in einer Liste:
>>> map(hex, range(0, 16))
['0x0', '0x1', '0x2', '0x3', '0x4', '0x5', '0x6', '0x7', '0x8', '0x9', '0xa', '0xb', '0xc', '0xd', '0xe', '0xf']
filter(F, L) liefert die Elemente aus L, für die F einen wahren Funktionswert liefert:
>>> def gerade(wert):
...     return (wert % 2) == 0
...
>>> filter(gerade, range(0, 16))
[0, 2, 4, 6, 8, 10, 12, 14]

Anonyme Funktionen

Das vorherige Beispiel kann man durch anonyme Funktionen noch verkürzen:
>>> filter(lambda wert:wert % 2 == 0, range(0, 16))
[0, 2, 4, 6, 8, 10, 12, 14


Juergen Hoetzel 2000-07-04