Python-Funktionen
Python-Funktionen
In diesem Artikel erfahren Sie mehr über Funktionen, was eine Funktion ist, die Syntax, Komponenten und Arten von Funktionen. Außerdem lernen Sie, eine Funktion in Python zu erstellen.
Video:Einführung in Python-Funktionen
Was ist eine Funktion in Python?
In Python ist eine Funktion eine Gruppe verwandter Anweisungen, die eine bestimmte Aufgabe ausführen.
Funktionen helfen dabei, unser Programm in kleinere und modulare Teile zu zerlegen. Da unser Programm immer größer wird, wird es durch Funktionen organisierter und überschaubarer.
Außerdem vermeidet es Wiederholungen und macht den Code wiederverwendbar.
Syntax der Funktion
def function_name(parameters): """docstring""" statement(s)
Oben gezeigt ist eine Funktionsdefinition, die aus den folgenden Komponenten besteht.
- Schlüsselwort
def
das markiert den Anfang des Funktionskopfes. - Ein Funktionsname zur eindeutigen Identifizierung der Funktion. Die Benennung von Funktionen folgt denselben Regeln wie das Schreiben von Bezeichnern in Python.
- Parameter (Argumente), durch die wir Werte an eine Funktion übergeben. Sie sind optional.
- Ein Doppelpunkt (:), um das Ende des Funktionsheaders zu markieren.
- Optionale Dokumentationszeichenfolge (docstring), um zu beschreiben, was die Funktion tut.
- Eine oder mehrere gültige Python-Anweisungen, die den Funktionskörper bilden. Anweisungen müssen dieselbe Einrückungsebene haben (normalerweise 4 Leerzeichen).
- Ein optionaler
return
-Anweisung, um einen Wert von der Funktion zurückzugeben.
Beispiel einer Funktion
def greet(name):
"""
This function greets to
the person passed in as
a parameter
"""
print("Hello, " + name + ". Good morning!")
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('Paul')
Hello, Paul. Good morning!
Versuchen Sie, den obigen Code im Python-Programm mit der Funktionsdefinition auszuführen, um die Ausgabe anzuzeigen.
def greet(name):
"""
This function greets to
the person passed in as
a parameter
"""
print("Hello, " + name + ". Good morning!")
greet('Paul')
Hinweis :In Python sollte die Funktionsdefinition immer vor dem Funktionsaufruf stehen. Andernfalls erhalten wir einen Fehler. Zum Beispiel
# function call
greet('Paul')
# function definition
def greet(name):
"""
This function greets to
the person passed in as
a parameter
"""
print("Hello, " + name + ". Good morning!")
# Erro: name 'greet' is not defined
Docstrings
Der erste String nach dem Funktionsheader heißt Docstring und ist die Abkürzung für Dokumentationsstring. Es wird kurz verwendet, um zu erklären, was eine Funktion macht.
Obwohl optional, ist die Dokumentation eine gute Programmierpraxis. Wenn Sie sich nicht erinnern können, was Sie letzte Woche zu Abend 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 über mehrere Zeilen erstrecken kann. Dieser String steht uns als __doc__
zur Verfügung Attribut der Funktion.
Zum Beispiel :
Versuchen Sie Folgendes in der Python-Shell auszuführen, um die Ausgabe anzuzeigen.
>>> print(greet.__doc__)
This function greets to
the person passed in as
a parameter
Um mehr über Docstrings in Python zu erfahren, besuchen Sie Python Docstrings.
Die return-Anweisung
Die return
-Anweisung wird verwendet, um eine Funktion zu verlassen und zu der Stelle zurückzukehren, von der sie aufgerufen wurde.
Syntax der Rückgabe
return [expression_list]
Diese Anweisung kann einen Ausdruck enthalten, der ausgewertet wird und dessen Wert zurückgegeben wird. Wenn es keinen Ausdruck in der Anweisung oder dem return
gibt -Anweisung selbst nicht in einer Funktion vorhanden ist, gibt die Funktion den None
zurück Objekt.
Zum Beispiel:
>>> print(greet("May"))
Hello, May. Good morning!
None
Hier, None
ist der zurückgegebene Wert seit greet()
druckt direkt den Namen und kein return
-Anweisung verwendet wird.
Beispiel für Rückgabe
def absolute_value(num):
"""This function returns the absolute
value of the entered number"""
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?

Geltungsbereich und Lebensdauer von Variablen
Der Gültigkeitsbereich einer Variablen ist der Teil eines Programms, in dem die Variable erkannt wird. Innerhalb einer Funktion definierte Parameter und Variablen sind 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 vorhanden ist. Die Lebensdauer von Variablen innerhalb einer Funktion ist so lang, 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 von ihren vorherigen Aufrufen.
Hier ist ein Beispiel, um den Geltungsbereich einer Variablen innerhalb einer Funktion zu veranschaulichen.
def my_func():
x = 10
print("Value inside function:",x)
x = 20
my_func()
print("Value outside function:",x)
Ausgabe
Value inside function: 10 Value outside function: 20
Hier können wir sehen, dass der Wert von x ist anfangs 20. Obwohl die Funktion my_func()
hat den Wert von x geändert auf 10, hat es den Wert außerhalb der Funktion nicht beeinflusst.
Das liegt daran, dass die Variable x innerhalb der Funktion ist anders (lokal für die Funktion) als außerhalb. Obwohl sie dieselben 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 einen globalen Geltungsbereich.
Wir können diese Werte innerhalb der Funktion lesen, aber nicht ändern (schreiben). Um den Wert von Variablen außerhalb der Funktion zu ändern, müssen sie mit dem Schlüsselwort global
als globale Variablen deklariert werden .
Arten von Funktionen
Grundsätzlich können wir Funktionen in die folgenden zwei Typen unterteilen:
- Integrierte Funktionen - Funktionen, die in Python integriert sind.
- Benutzerdefinierte Funktionen - Funktionen, die von den Benutzern selbst definiert werden.
Python