i

Einfache Routinen

Mittlerweile hat Yasmin ihr Programm noch so verändert, dass man die Namensschilder an verschiedenen Orten auf das Papier drucken kann; zuständig ist die Variable yposition.

Aufgabe 1: Programmtest

Teste das Programm, indem Du die y-Position des Schildchens auf verschiedene Werte setzt.

Nun möchte Yasmin drei Namensschilder übereinander drucken lassen. Sie könnte natürlich den Programmcode mit Strg-C kopieren und mit Strg-V zweimal neu einfügen und dazwischen die Variable yposition auf einen anderen Wert setzen.

Aber dieses Programm würde sehr lang und sehr unübersichtlich. Und jede Änderung müsste man dann gleich drei mal machen und sehr aufpassen, dass man nichts vergisst.

Viel einfacher wäre es, wenn man einen eigenen Befehl zum Erzeugen eines Namensschildes festlegen könnte, den man dann aus dem Programm heraus aufrufen kann. Bei einem "selbstgemachten" Befehl spricht man auch von einem "Unterprogramm" oder auch einer Routine.

Wie man eine Routine erstellt und als neuen Befehl verwendet, zeigt das folgende Programm.

Zur Festlegung ("Definition") der Routine verwendet man die Python-Anweisung def gefolgt von dem Namen der Routine und einem runden Klammernpaar.

Die folgenden Befehle sind jeweils mit einem Tabulator-Zeichen eingerückt. Auf diese Weise erkennt Python auch, wann die Befehlsfolge für den neuen Befehl zu Ende ist.

Dieses Einrücken ist typisch Python: In anderen Programmiersprachen wird eine Befehlsfolge anders gegenüber dem Rest abgegrenzt, etwa durch Schlüsselwörter wie begin und end in der Programmiersprache Pascal oder durch z.B. durch (geschweifte) Klammern { und } in Sprachen wie C, C++, Java oder JavaScript.

Nach der Definition der Funktion folgt dann das eigentliche Programm, in dem die Routine wie ein Python-Befehl verwendet wird. Dieses "eigentliche Programm" wird in der Programmierung auch als Hauptprogramm bezeichnet.

Suche

v
100.102.3.1
inf-schule.de/entwuerfe/python_online/eigene_befehle/einfache_routinen
inf-schule.de/100.102.3.1
inf-schule.de/@/page/HFOo1zthvNAIZw2m

Rückmeldung geben