Funktionen kennst du schon aus Mathe, dort gibt es beispielsweise die Wurzelfunktion: y = √x
In Python schreibt man dafür: y = sqrt(x)
, Beispiel:
>>> y = sqrt(2)
>>> y
1.4142135623730951
>>> sqrt(3)
1.7320508075688772
Probiere das obige Beispiel aus! Wie? Schon wieder eine Fehlermeldung??
Studiere die Fehlermeldung und formuliere eine Vermutung. Jetzt! _____________________________________________________________
Wir haben beim letzten Mal auch eine Python-Funktion
kennengelernt, welche? _____________________________________________________________
Wie schreibt man eine Python-Funktion? Hier ein Beispiel:
An diesem Beispiel ist so ziemlich alles wichtig, was ihr seht. Zuvor aber ein
wichtige Unterscheidung: Was ihr hier seht, ist eine
Funktionsvereinbarung, man sagt kurz: hallo()
ist eine Abkürzung für die
beiden print-Befehle. Wenn man eine Funktion vereinbart hat, will man sie auch
aufrufen, gib einfach ein:
>>> hallo()
Als Ergebnis solltest du auf dem Bildschirm sehen:
Hallo, liebe Klasse G10b
Python IS fun!
Und jetzt zur Funktionsvereinbarung, der Einfachheit halber mit Zeilennummern, die du natürlich nicht eingibst!
(1) >>> def hallo():
(2) print 'Hallo, liebe Klasse G10b'
(3) print 'Python IS fun!'
(4)
(5) >>>
Erklärung:
def
, danach kommt der Funktionsname, hier hallo()
und schließlich kommt der Doppelpunkt :
Der Doppelpunkt ist wichtig, er sagt Python in etwa: jetzt beginnt die Funktionsvereinbarung, alles was jetzt folgt, gehört zur Funktion hallo()
. Und wo endet die Funktionsvereinbarung?? Schauen wir in Zeile (2): Diese Zeile ist eingeruckt, das macht Python fur dich, und diese Einruckungen sind wichtig! Wieviel Zeichen eingeruckt wird, ist Python egal, aber: du musst alle Befehle gleich weit einrucken, und weil das so wichtig ist, schreiben wir das noch mal zentriert und fett:
Du musst alle Python-Befehle in einer Funktion gleich weit einrücken!
Keine Regel ohne Ausnahme, doch dazu später.
from math import sqrt
, danach sollte es gehen! Warum? Später! In Zeile (4) und Zeile (5) entstehen, indem man zweimal hintereinander auf Return
oder Enter
drückt, ohne irgendetwas einzugeben! Damit enden die Einrückungen, und damit endet auch die Funktionsvereinbarung!
Aufgabe: Bringe das Beispiel oben zum Laufen!
Wenn wir IDLE verlassen, sind unsere selbst geschriebenen Funktionen weg! Das muss nicht sein: Gehe im Menü oben über "File=>New window" (kürzer: "Strg N", das heisst, drücke die Strg-Taste, lasse sie gedrückt und drücke die N-Taste), und gib in das neue Fenster ein:
Beachte die Einruckungen! Abspeichern geht uber "File=>Save" (kurzer: "Strg S"), du musst aber beim Dateinamen die Endung ".py" mit eingeben (Bitte auf Laufwerk H:\ abspeichern):
Danach sollte dein Fenster etwa so aussehen:
Und wie führt man diese kleine Python-Funktion aus? Ganz einfach: über "Run→Run Module" (kürzer: "F5", F5 ist eine der Funktionstasten oben auf der Tastatur). Probiere es aus. Wie, es passiert nichts? Gib einfach ein:
>>> hallo()
Muster machen wir mit vielen print-Befehlen! Beispiel:
def muster():
print '*'*7
print '*' + ' '*5 + '*'
print '*'*7
Frage: Was wird hier wohl ausgegeben, Skizze:
Aufgabe: Gib diese Python-Funktion im Editor ein und probiere sie aus, abspeichern unter "muster_01.py", und noch eine
Frage: Wie kannst du diese Funktion aufrufen? _____________________________________________________________
Schreibe eine Funktion hallo2()
, die dich nach deinem Namen fragt, und dann mit deinem Namen begrüßt! Abspeichern unter hallo2.py
Schreibe eine Funktion dreieck()
, die folgende Ausgabe erzeugt:
Abspeichern unter dreieck.py
→ sp, 2016-12-07