Eine Funktion ist ein Programmcode, der über den Funktionsnamen gezielt aufgerufen werden kann.
Diese Art von Programmcode lässt sich beliebig oft nutzen, ohne immer wieder im Code zu erscheinen.
Das hilft den aktuellen Programm-Code übersichtlich zu halten und vermindert die Fehleranfälligkeit eines Programms.
Der Code dient immer einem bestimmten Zweck, z.B. der Darstellung von Text auf der Konsole. (print())
Man kann bestehende Funktionen nutzen (siehe Tabelle) oder eigene Funktionen definieren.
Das Schlüsselwort def leitet die Funktionsdefinition ein, das return-Statement Symbolisiert das Ende der Funktion:
def funktionsname (parameterliste): Anweisungen return
Wichtig ist hierbei auf die Einrückung mit dem Tabulator zu achten.
Sobald der Programmcode nicht mehr richtig eingerückt ist, zählt er als eigenständiger Code.
Um eine Funktion zu nutzen, muss sie im Programm aufgerufen werden.
Beispiel ohne Parameter:
Beispiel mit einem Parameter:
Beispiel mit zwei Parameter:
Ändere das Programm zur Berechnung der Fakultät so um, dass der Programmcode der Berechnugn in einer Funktion ist.
Zu Beginn soll das Programm eine Zahl einlesen und diese der Funktion übergeben. Diese soll wie gehabt die Fakultät der Zahl berechnen und ausgeben.
Eine Funktion muss die Resultate nicht zwingend direkt auf der Konsole ausgeben. Damit der Hauptcode auf die Resultate einer Funktion zugreifen kann, können diese mit dem return-Statement an den Hauptcode zurückgegeben werden.
Beispiel mit einem Rückgabewert:
Schreibe ein Programm, welches in einer Funktion das Quadrat einer Zahl berechnet und das Ergebnis anschließend dem Hauptprogramm zurü:ck gibt.
Im Hauptprogramm soll das Ergebnis nach der folgenden Ankündigung ausgegeben werden:
"Das Quadrat der Zahl" zahl
"beträgt: " Ergebnis der Funktion
Ändere das Programm zur Berechnung der Fakultät so um, dass die Funktion mit einem Rückgabewert arbeitet.
Zu Beginn soll das Programm eine Zahl einlesen und diese der Funktion übergeben.
Diese soll die Fakultät der Zahl berechnen und nur den Rückgabewert ausgeben.
Ein print()-Befehl gibt das Ergebnis anschließend aus.
Funktion | Aktion | Beispiel |
---|---|---|
print(var, "Text ") | Gibt die Elemente in den Klammern auf der Console aus | print("Hallo", wort, 3) → Hallo welt 3 |
input( "Eingabe-Aufforderung") | Der Text wird auf der Console ausgegeben anschließend muss der Nutzer etwas auf der Console eingeben |
input("Gib eine Zahl ein ") → |
type(variable) | Gibt denDatentyp des Elements auf der Console aus | type("Hallo") → ? |
len(variable) | Gibt die Länge eines sequentiellen Datentyps aus | kurs = "Python-"
print(len(kurs)) → 7 |
list( "Text " ) | Zerlegt einen String in einzelne Elemente und speichet diese in einer Liste ab. | kurs = list(
"P-t on")
→ kurs=['P', '-', 't', ' ', 'o', 'n'] |
range(zahl) | Erstellt eine Sequenz aus Zahlen von 0 bis zahl
In Kombination mit der Funktion list(Sequenz) kann man eine Liste der Länge zahl erstellen |
kurs = list(range(6))
→ kurs=[0, 1, 2, 3, 4, 5] |
Die folgende Liste zeigt einige Funktionen für Strings und Listen auf.
Funktion | Aktion | Beispiel |
---|---|---|
len(variable) | Gibt die Länge eines sequentiellen Datentyps aus | kurs = "Python-"
print(len(kurs)) → 7 |
list( "Text " ) | Zerlegt einen String in einzelne Elemente und speichet diese in einer Liste ab. | kurs = list(
"P-t on")
→ kurs=['P', '-', 't', ' ', 'o', 'n'] |
range(zahl) | Erstellt eine Sequenz aus Zahlen von 0 bis zahl
In Kombination mit der Funktion list(Sequenz) kann man eine Liste der Länge zahl erstellen |
kurs = list(range(6))
→ kurs=[0, 1, 2, 3, 4, 5] |
min(variable) | Gibt das kleinste Element des sequentiellen Datentyps aus
Bei Buchstaben und Zeichen nach Lexiografischer Reihenfolge |
kurs = "Python-Daten"
print(min(kurs)) → - |
max(variable) | Gibt das größte Element des sequentiellen Datentyps aus
Bei Buchstaben und Zeichen nach Lexiografischer Reihenfolge |
kurs = "Python-Daten"
print(max(kurs)) → y |
Je nach den übergebenen Variablen kann die range()-Funktion den Zähler entweder bei 0 oder bei einer beliebigen Zahl starten lassen und gleichzeitig das Ende der Schleife sowie optional die Schrittweite festlegen.
Die Funktion range(y) gibt eine Sequenz von Zahlen in Einerschritten aus.
Diese Sequenz startet bei 0 und endet bei y-1.
Variable | Bedeutung |
---|---|
y | Endwert der Sequenz. Die Sequenz endet vor diesem Wert (nicht inklusiv). |
Die Funktion range(x,y) gibt eine Sequenz von Zahlen, beginnend bei x, in Einerschritten aus.
Diese Sequenz startet bei x und endet bei y-1.
Variable | Bedeutung |
---|---|
x | Startwert der Sequenz. Die Sequenz beginnt bei diesem Wert. |
y | Endwert der Sequenz. Die Sequenz endet vor diesem Wert (nicht inklusiv). |
Statt der Variablen können auch kleine Berechnungen eingesetzt werden (z.B. y+1)
Die Funktion range(x,y,z) gibt eine Sequenz von Zahlen, beginnend bei x, in z-Schritten aus.
Diese Sequenz startet bei x und endet bei y-1, sofern sich y-1 innerhalb der Schrittgröße befindet.
Variable | Bedeutung |
---|---|
x | Startwert der Sequenz. Die Sequenz beginnt bei diesem Wert. |
y | Endwert der Sequenz. Die Sequenz endet vor diesem Wert (nicht inklusiv). |
z | Schrittweite oder Inkrement. Dies ist der Abstand zwischen den aufeinanderfolgenden Zahlen in der Sequenz. |
Weitere Möglichkeiten der Nutzung der range()-Funktion findest du wenn du auf den Link klickst.