Python Functions
Table of Contents
In diesem Artikel erfahren Sie mehr über Funktionen, was eine Funktion ist, die Syntax, Komponenten und Funktionstypen. Außerdem lernen Sie, eine Funktion in Python zu erstellen.
Was ist eine Python-Funktion?
In Python ist eine Funktion eine Gruppe zusammengehöriger Anweisungen, die eine bestimmte Aufgabe ausführen.
Funktionen helfen dabei, unser Programm in kleinere und modulare Blöcke zu unterteilen. Da unser Programm immer größer wird, wird es durch Funktionen besser organisiert und überschaubar.
Außerdem vermeidet es Wiederholungen und macht den Code wiederverwendbar.
Syntax der Funktion
def function_name(parameters): """docstring""" statement(s)
Oben abgebildet ist eine Funktionsdefinition, die aus den folgenden Komponenten besteht.
- Stichwort
def
das markiert den Anfang des Funktionskopfes. - Ein Funktionsname zur eindeutigen Identifizierung der Funktion. Die Benennung der Funktion folgt dem gleichen regeln zum Schreiben von Bezeichnern in Python.
- Parameter (Argumente), über die wir Werte an eine Funktion übergeben. Sie sind optional.
- Ein Doppelpunkt (:), um das Ende des Funktionsheaders zu markieren.
- Optionaler Dokumentationsstring (docstring), um zu beschreiben, was die Funktion macht.
- Eine oder mehrere gültige Python-Anweisungen, aus denen der Funktionsrumpf besteht. Anweisungen müssen dieselbe Einrückungsebene haben (normalerweise 4 Leerzeichen).
- Eine optionale
return
anweisung, um einen Wert von der Funktion zurückzugeben.
Beispiel für eine Funktion
def greet(name): """ Diese Funktion grüßt an die Person ging hinein als ein Parameter """ print("Hallo, " + name + ". Guten Morgen!")
Wie rufe ich eine Funktion in Python auf?
Sobald wir eine Funktion definiert haben, können wir sie von einer anderen Funktion, einem Programm oder sogar der Python-Eingabeaufforderung aufrufen. Um eine Funktion aufzurufen, geben wir einfach den Funktionsnamen mit den entsprechenden Parametern ein.
>>> greet('John') Hallo, John. Guten Morgen!
Notiz
Versuchen Sie, den obigen Code im Python-Programm mit der Funktionsdefinition auszuführen, um die Ausgabe anzuzeigen.
def greet(name): """ Diese Funktion grüßt an die Person ging hinein als ein Parameter """ print("Hallo, " + name + ". Guten Morgen!") greet('John')
Docstrings
Der erste String nach dem Funktionsheader wird Docstring genannt und ist eine Abkürzung für Dokumentationsstring. Es wird kurz verwendet, um zu erklären, was eine Funktion tut.
Obwohl optional, ist die Dokumentation eine gute Programmierpraxis. Wenn Sie sich nicht daran erinnern können, was Sie letzte Woche zum Abendessen gegessen haben, dokumentieren Sie immer Ihren Code.
Im obigen Beispiel haben wir einen Docstring direkt unter dem Funktionsheader. Wir verwenden im Allgemeinen dreifache Anführungszeichen, damit sich docstring auf mehrere Zeilen erstrecken kann. Diese Zeichenfolge steht uns als __doc__
attribut der Funktion.
Beispielsweise:
Versuchen Sie Folgendes in der Python-Shell auszuführen, um die Ausgabe anzuzeigen.
>>> print(greet.__doc__) Diese Funktion grüßt an die Person ging hinein als ein Parameter
Um mehr über Docstrings in Python zu erfahren, besuchen Sie Python Docstrings.
Die return anweisung
Dasreturn
anweisung wird verwendet, um eine Funktion zu verlassen und zu der Stelle zurückzukehren, von der aus sie aufgerufen wurde.
Syntax von return
return [ausdrucksliste]
Diese Anweisung kann einen Ausdruck enthalten, der ausgewertet und der Wert zurückgegeben wird. Wenn die Anweisung keinen Ausdruck enthält oder die or return
anweisung selbst nicht innerhalb einer Funktion vorhanden ist, dann gibt die Funktion dieNone
objekt.
Beispielsweise:
>>> print(greet("Mai")) Hallo, Mai. Guten Morgen! None
Hier, None
ist der zurückgegebene Wert seit greet()
druckt direkt den Namen und nein return
anweisung wird verwendet.
Beispiel von return
def absolute_value(num): """Diese Funktion gibt das absolute zurück Wert der eingegebenen Zahlr""" if num >= 0: return num else: return -num print(absolute_value(2)) print(absolute_value(-4))
ausgabe
2 4
Wie funktioniert die Funktion in Python?
Umfang und Lebensdauer der Variablen
Der Gültigkeitsbereich einer Variablen ist der Teil eines Programms, in dem die Variable erkannt wird. Parameter und Variablen, die innerhalb einer Funktion definiert sind, sind von außerhalb der Funktion nicht sichtbar. Daher haben sie einen lokalen Geltungsbereich.
Die Lebensdauer einer Variablen ist der Zeitraum, in dem die Variable im Speicher verbleibt. Die Lebensdauer von Variablen innerhalb einer Funktion beträgt so lange, wie die Funktion ausgeführt wird.
Sie werden zerstört, sobald wir von der Funktion zurückkehren. Daher erinnert sich eine Funktion nicht an den Wert einer Variablen aus ihren vorherigen Aufrufen.
Hier ist ein Beispiel, um den Gültigkeitsbereich einer Variablen innerhalb einer Funktion zu veranschaulichen.
def my_func(): x = 10 print("Wert innerhalb der Funktion:",x) x = 20 my_func() print("Wert außerhalb der Funktion:",x)
Output
Wert innerhalb der Funktion: 10 Wert außerhalb der Funktion: 20
Hier sehen wir, dass der Wert von x ist anfangs 20. Auch wenn die Funktion my_func()
änderte den Wert von x bis 10, hatte es keinen Einfluss auf den Wert außerhalb der Funktion.
Dies liegt daran, dass die Variablex innerhalb der Funktion ist anders (lokal zur Funktion) als außerhalb. Obwohl sie die gleichen Namen haben, handelt es sich um zwei verschiedene Variablen mit unterschiedlichen Gültigkeitsbereichen
Andererseits sind Variablen außerhalb der Funktion von innen sichtbar. Sie haben eine globale geltungsbereich.
Wir können diese Werte aus der Funktion heraus lesen, aber nicht ändern (schreiben). Um den Wert von Variablen außerhalb der Funktion zu ändern, müssen sie mit dem Schlüsselwort . als globale Variablen deklariert werden global
.
Arten von Funktionen
Grundsätzlich können wir Funktionen in die folgenden zwei Typen unterteilen:
- Eingebaute Funktionen – Funktionen, die in Python eingebaut sind.
- Benutzerdefinierte Funktionen – Funktionen, die von den Benutzern selbst definiert werden.