At My Fingertips

Kreise

In dieser Aktivität lernen Sie, wie Sie Ihre eigenen Funktionen definieren können.

Grafik beschreiben

Nehmen Sie an, Sie haben einen Freund, der die folgende Abbildung nicht sehen kann:

Alttext

Welche der folgenden Beschreibungen ist besser?

  1. Eine blaue Ellipse
  2. Ein blauer Kreis

Es scheint kreisförmig zu sein, also nennen wir es einen Kreis.

Einen Kreis erstellen

Ein Kreis ist eigentlich eine besondere Form der Ellipse. Eine Ellipse, bei der Breite und Höhe identisch sind. Vielleicht haben Sie schon einmal einen Kreis in PyTamaro erstellt. Benutzen Sie die ellipse-Funktion, um einen roten Kreis mit dem Durchmesser 100 zu erstellen:

Loading...

Klicken Sie zur Überprüfung auf den Knopf "AUSFÜHREN". Sieht es wie ein Kreis aus?

Definieren einer Funktion zur bequemen Erstellung von Kreisen

Es war nicht besonders bequem, einen Kreis durch Aufruf der Funktion ellipse zu erzeugen. Das Wort "Ellipse" in unserem Code zu schreiben, wenn wir eigentlich den Spezialfall eines Kreises meinen, ist nicht sehr intuitiv. Ausserdem müssen wir den Durchmesser zweimal angeben, einmal für die Breite und einmal für die Höhe. Dies ist ärgerlich!

Wäre es nicht schön, wenn es eine spezielle Funktion zum Erstellen eines Kreises gäbe, mit dem treffenden Namen kreis, die nur einen Durchmesser als Parameter benötigt?

Ha! Wann immer Sie denken: "Wäre es nicht schön, wenn es eine spezielle Funktion gäbe, um...", sollten Sie sich glücklich schätzen! Warum eigentlich? Weil Sie sich diesen Wunsch erfüllen können! Und wie? Python erlaubt es uns, eigene Funktionen zu definieren!

Die beiden Zeilen, die mit def und return beginnen, zeigen in der folgenden Codezelle, wie man eine Funktion definiert. Ersetzen Sie in der Zeile danach ... durch einen Aufruf Ihrer neu definierten Funktion kreis, um einen blauen Kreis mit dem Durchmesser 100 zu erzeugen.

Loading...

Das Schlüsselwort def besagt, dass das Folgende die Definition einer Funktion ist. Direkt nach diesem Wort geben Sie den Namen der Funktion an (wir haben unsere Funktion kreis genannt). Dann geben Sie die Parameter an, die in Klammern stehen (unsere Funktion kreis hat zwei Parameter: durchmesser und farbe). Die Zeile endet mit einem Doppelpunkt. Unterhalb dieser Zeile schreiben Sie den Körper der Funktion.

Python-Funktionsdefinition

Der Körper besteht aus einer oder mehreren Zeilen, jede Zeile enthält eine Anweisung. In unserem Beispiel besteht der Rumpf aus einer einzigen Zeile, einer "Return"-Anweisung. Wo endet der Textkörper? Gute Frage! Sehen Sie, dass der Textkörper ein wenig eingerückt ist? Um vier Leerzeichen. In Python ist die Einrückung wichtig. Sehr viel! Der Hauptteil der Funktion geht so lange weiter, wie die Einrückung bestehen bleibt. Wenn eine Zeile nicht mehr eingerückt ist, ist sie nicht mehr Teil des Körpers. In der Code-Zelle oben, ist die Zeile blauer_Kreis = kreis(100, blau) nicht mehr Teil des Rumpfes.

Was macht der Körper? Immer wenn die Funktion aufgerufen wird, wird der Körper ausgeführt. Der Körper der Funktion kreis ruft ellipse auf, um eine Kreisgrafik zu erzeugen, und gibt dann diese Kreisgrafik zurück.

Unsere Code-Zelle tut also vier Dinge:

  1. Importiert die Namen ellipse, blau und zeige_grafik.
  2. Definiert die Funktion kreis, so dass sie, wann immer sie aufgerufen wird, eine kreisförmige Ellipse mit dem angegebenen Durchmesser und der Farbe erzeugt.
  3. Ruft die Funktion kreis auf, um eine Grafik zu erzeugen, und weist dieser Grafik den Namen blauer_kreis zu.
  4. Zeigt die Grafik, die unter dem Namen blauer_kreis bekannt ist.

Verschiedene Kreise

Erstellen Sie in der folgenden Codezelle einen grünen Kreis mit dem Durchmesser 150 und zeigen Sie ihn an.

Importieren Sie zunächst die Definition des Namens gruen, und ersetzen Sie dann das ... durch den entsprechenden Aufruf von kreis.

Loading...

Erstellen Sie nun einen schwarzen Kreis mit dem Durchmesser 80 und zeigen Sie ihn an. Definieren Sie dieses Mal keinen Namen, sondern rufen Sie einfach die Funktion kreis auf, wo das ... steht.

Loading...

Was Sie gelernt haben

Sie haben das Erstellen von Kreisen geübt, aber viel wichtiger ist, dass Sie Ihre erste Begegnung mit einer sehr wichtigen Idee in der Programmierung hatten:

  • eine eigene Funktion erstellen (mit def)

Das Definieren einer Funktion ist eine Form der Abstraktion: Sie können einem Code (dem "Körper" der Funktion) einen Namen geben, und Sie können dann diesen Namen verwenden (um die Funktion "aufzurufen") wo auch immer Sie diesen Code ausführen müssen. Funktionen können Parameter haben (wie durchmesser). Sie können dieselbe Funktion viele Male aufrufen und dabei verschiedene Werte an die Parameter übergeben.

Mit der Zeit werden Sie viele, viele Funktionen definieren. Das Definieren neuer Funktionen wird eine Ihrer häufigsten Tätigkeiten als Programmierer sein!


This activity has been created by LuCE Research Lab and is licensed under CC BY-SA 4.0.

Kreise

Logo of PyTamaro

PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI

Privacy PolicyPlatform Version b744b47 (Tue, 08 Oct 2024 16:30:14 GMT)