i

Fachkonzept: Funktion

Funktionen in der Mathematik

Funktionen kennst Du wahrscheinlich aus dem Mathematik-Unterricht. Die Funktion \begin{equation} f(x) = 3 \cdot x + 5 \end{equation} ordnet jedem Wert für $x$ einen entsprechenden Funktionswert $f(x)$ zu. Der Zahl $1$ wird der Wert $3 \cdot 1 +5$, also $8$, zugeordnet, der Zahl $2$ der Wert $3 \cdot 2 +5$, also $11$ usw. Eine Funktion hat in der Mathematik immer einen Funktionsnamen, im Mathematikunterricht häufig einen einzelnen Buchstaben $f$, $g$, usw. Die Variable in Klammern stehende Variable $x$ heißt Funktionsargument.

In der höheren Mathematik können Funktionen durchaus auch mehrere Funktionsargumente haben. Ein Beispiel wäre die Funktion \begin{equation} f(x,y,z) = 3 \cdot x + 7 \cdot y - 2 \cdot z + 8 \end{equation} Eine solche Funktion ordnet dann jeder Kombination aus drei Zahlen einen Wert zu, der Kombination $(x=2; y=5; z=3)$ zum Beispiel den Wert $3 \cdot 2 + 7 \cdot 5 - 2 \cdot 3 + 8$, also $43$.

Wichtig für uns ist hier: Eine mathematische Funktion hat einen Namen, eine Eingabe (das Funktionsargument bzw. die Funktionsargumente) und eine Ausgabe (den zugeordneten Funktionswert).

Einfache Funktionen in Python

Die oben gezeigte Funktion \begin{equation} f(x,y,z) = 3 \cdot x + 7 \cdot y - 2 \cdot z + 8 \end{equation} kann man auch in der Programmiersprache Python darstellen. Die Darstellung sieht etwas anders aus als im Mathematikbuch, aber vieles lässt sich wiedererkennen:
def f(x,y,z):
	return 3*x + 7*y - 2*z + 8
Man erkennt vor allem den Funktionsnamen und die Argumente. Am Schlüsselwort return erkennt man, dass ein Wert zurückgegeben wird; hinter dem Schlüsselwort steht ein Ausdruck für den Rückgabewert. Neben dem Festlegen der Rückgabe können aber auch weitere Befehle in einer Python-Funktion stehen. Das könnte zum Beispiel bei komplizierten Funktionen eine Art Zwischenrechnung sein, es können aber auch beliebige andere Python-Befehle sein.

Im Fall aus dem letzten Abschnitt

def draw():
    screen.clear()
liegt ein (aus mathematischer Sicht) extremer Spezialfall vor: Diese Funktion hat überhaupt keine Funktionsargumente (zwischen den Klammern hinter dem Funktionsnamen draw steht nichts). Außerdem wird auch kein Wert zurückgegeben: es gibt keine return-Anweisung. Aus mathematischer Sicht gesehen ist das eine eher unsinnige Funktion.

Funktionen werden in Python jedoch auch genutzt, um eine Folge von mehreren Befehlen zusammenzufassen und dieser Zusammenfassung einen Namen (eben den Funktionsnamen) zu geben. In der Funktion draw wird die Befehlsfolge festgelegt, die beim Zeichnen des Fensters ausgeführt werden soll. In unserem Beispiel besteht diese Folge nur aus einem einzigen Befehl screen.clear(), später werden das aber deutlich mehr Befehle werden. Die Befehle in einer Funktion werden gegenüber dem Wort def eingerückt.

Auf diese Weise kann man mit Funktionen eigene Python-Befehle konstruieren, in diesem Fall der neue Befehl draw().

Suche

v
7.4.2.2
www.inf-schule.de/oop/spiele-python/erste-programme/fk-funktion
www.inf-schule.de/7.4.2.2

Rückmeldung geben