i

Routinen mit Parametern

Übergabe von Werten

Bei dem Programm im vorherigen Abschnitt musste die Variable yposition immer wieder auf einen neuen Wert gesetzt werden, bevor der selbstgemachte Befehl namensschild() aufgerufen wurde.

Viel einfacher wäre es, wenn die y-Position dem Befehl Namensschild direkt mitgegeben werden könnte, wie man ja auch dem Befehl dot(...) die Größe des Punktes direkt als Zahl zwischen den Klammern mitgibt.

Das funktioniert sehr einfach: Man schreibt den Namen der Variablen, die dem Befehl mitgegeben werden soll, zwischen die Klammern. Man nennt solche mitgegebenen Variablen auch Parameter.

Du siehst: Der untere Teil des Programms wird hierdurch zum einen kürzer und zum anderen deutlich übersichtlicher.

Parameter als lokale Variablen

In dem obigen Beispiel hast du gesehen, dass die Variable yposition jetzt ein Parameter der Routine namensschild ist. Auch in diesem Fall ist es so, dass der Parameter zwar genauso heißt wie die globale Variable. Trotzdem ist es in Wirklichkeit eine lokale Kopie mit gleichem Namen. Wird auf diese lokale Kopie ein neuer Wert zugewiesen, ändert sich deshalb der Wert der globalen Variable nicht. Das kann möglicherweise verwirrend sein.

Eine Möglichkeit, das Problem aktiv zu vermeiden, kann darin bestehen, Variablen, die als Parameter von Routinen verwendet werden, z.B. mit einem vorgestellten _-Zeichen zu markieren, in unserem Beispiel z.B. also _yposition. Wenn nun der Programmierer eine globale Variable yposition verwendet, kann es hier keine Verwechslungen geben.

Im folgenden Programm gibt es den Parameter _yposition als lokale Variable und die globale Variable yposition. Sowohl für den Programmierer als auch für Python ist zur jeder Zeit eindeutig nachvollziehbar, welche der beiden Variablen gemeint ist.

Suche

v
100.102.3.3
inf-schule.de/entwuerfe/python_online/eigene_befehle/routinen_mit_parametern
inf-schule.de/100.102.3.3
inf-schule.de/@/page/lYsRD5n8AXM0unWt

Rückmeldung geben