English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Artikel werden Sie Funktionen, was Funktionen sind, ihre Syntax, Zusammensetzung und Typen kennenlernen. Außerdem lernen Sie, wie man Funktionen in Python erstellt.
In Python ist eine Funktion eine Gruppe von relateden Anweisungen, die eine spezifische Aufgabe ausführen.
Funktionen helfen, unser Programm in kleinere Module zu zerlegen. Mit zunehmendem Umfang unserer Projekte machen sie es besser organisiert und einfacher zu verwalten.
Darüber hinaus vermeidet es die wiederholte Schreibweise desselben Codes, und Funktionen machen den Code wiederverwendbar.
def function_name(parameters): """docstring""" statement(s)
Das gezeigte ist die Definition einer Funktion, die aus folgenden Komponenten besteht.
def ist der Schlüsselwort, der den Anfang einer Funktion anzeigt.
um den Namen der Funktion eindeutig zu identifizieren. Die Namensgebung der Funktionen folgtin Python zu schreibenvon demselbenRegeln.
durch die Parameter übergeben werden, die an die Funktion übergeben werden. Sie sind optional.
der am Ende des Funktionskopfes durch ein Semikolon (:) markiert wird.
Optionale Dokumentationsstring (docstring), um die Funktion der Funktion zu beschreiben.
eine oder mehrere gültige Python-Anweisungen, die den Funktionskörper bilden. Die Anweisungen müssen die gleiche Einrückungsebene haben (normalerweise4eine Leerzeichen).
Optionaler return-Ausdruck, um einen Wert von der Funktion zurückzugeben.
def greet(name): "" Dies ist eine Begrüßungsfunktion durch den name-Parameter übergeben Der Name der Person, die begrüßt werden soll "" print("Hallo, " + name + ". Guten Morgen!")
Nachdem die Funktion definiert wurde, können wir sie von einer anderen Funktion, einem Programm oder dem Python-Interpret aufrufen. Um eine Funktion aufzurufen, müssen wir nur den Namen der Funktion mit den richtigen Parametern eingeben.
>>> greet('Paul') Hallo, Paul. Guten Morgen!
Hinweis:Führen Sie den folgenden Code in einem Python-Programm mit Funktionsdefinition aus, um die Ausgabe anzuzeigen.
def greet(name): "" Dies ist eine Begrüßungsfunktion durch den name-Parameter übergeben Der Name der Person, die begrüßt werden soll "" print("Hallo, " + name + ". Guten Morgen!") greet('Paul')
Die erste Zeichenfolge nach dem Funktionskopf wird als docstring bezeichnet und ist eine Abkürzung für Dokumentationsstring. Sie beschreibt kurz die Funktion.
Obwohl optional, ist die Dokumentation eine gute Programmierpraxis. Es sei denn, Sie erinnern sich an die Zeit und das Essen des Abendessens vom letzten Jahr heute, dann sollten Sie unbedingt Kommentare zu Ihrem Code hinzufügen.
Im obigen Beispiel haben wir direkt unter dem Funktionskopf eine Dokumentationsstring. Wir verwenden normalerweise dreifache Anführungszeichen, um Dokumentationsstrings über mehrere Zeilen zu erweitern. Diese Zeichenfolge kann als __doc__-Eigenschaft der Funktion verwendet werden.
Beispielsweise:
Versuchen Sie, den folgenden Inhalt im Python-Shell auszuführen, um die Ausgabe anzuzeigen.
>>> print(greet.__doc__) Dies ist eine Begrüßungsfunktion durch den name-Parameter übergeben Der Name der Person, die begrüßt werden soll
Für mehr Informationen über Dokumentationsstrings in Python besuchen Sie bittePython-Dokumentationsstrings.
Das return-Ausdruck wird verwendet, um die Funktion zu verlassen und zum Aufrufort der Funktion zurückzukehren.
return [expression_list]
Dieser Ausdruck kann einen Ausdruck enthalten, der ausgewertet und sein Ergebnis zurückgegeben wird. Wenn in diesem Ausdruck kein Ausdruck vorhanden ist oder das return-Ausdruck selbst nicht in der Funktion existiert, gibt die Funktion das None-Objekt zurück.
Beispielsweise:
>>> print(greet("Mai")) Hallo, Mai. Guten Morgen! None
None ist der Rückgabewert, weil die greet() Funktion den Namen direkt ausgeben und keine return-Anweisung verwenden.
def absolute_value(num): """Diese Funktion gibt den Absolutwert der Eingabenummer zurück""" if num >= 0: return num else: return -num print(absolute_value(2)) print(absolute_value(-4))
Ausgabefolge
2 4
Der Gültigkeitsbereich einer Variable ist der Teil des Programms, in dem die Variable erkannt werden kann. Von außen der Funktion sind die in der Funktion definierten Parameter und Variablen nicht sichtbar. Daher haben sie einen lokalen Gültigkeitsbereich.
Der Lebenszyklus einer Variable ist die Zeit, in der die Variable im Speicher abgeht. Der Lebenszyklus der Variablen innerhalb der Funktion ist so lang wie die Ausführungszeit der Funktion.
Sobald wir aus der Funktion zurückkehren, werden sie zerstört. Daher kann die Funktion die Werte der vorherigen Aufrufe der Variablen nicht merken.
Dies ist ein Beispiel, um den Lebenszyklus von Variablen innerhalb der Funktion zu erläutern.
def my_func(): x = 10 print("Wert innerhalb der Funktion:",x) x = 20 my_func() print("Wert außerhalb der Funktion:",x)
Ausgabefolge
Wert innerhalb der Funktion: 10 Wert außerhalb der Funktion: 20
hier können wir sehenxanfänglichen Wert20. Selbst wenn die Funktion my_func() denxin10wird es nicht beeinflussen, den Wert außerhalb der Funktion.
denn die Variablen im Funktionsbereichx mitDie Variable x außerhalb der Funktion ist unterschiedlich. Obwohl sie denselben Namen haben,Aber sie sind zwei verschiedene Variablen mit verschiedenen Gültigkeitsbereichen.
Andererseits sind sie von außen sichtbar, die Variablen außerhalb der Funktion. Sie haben einen globalen Gültigkeitsbereich, das bedeutet, dass die globale Variable sowohl innerhalb als auch außerhalb der Funktion verwendet werden kann.
Wir können diese Werte aus der Funktion lesen, aber sie können nicht geändert (geschrieben) werden. Um den Wert einer Variable außerhalb der Funktion zu ändern, müssen wir den Schlüssel global verwenden und sie als globale Variable deklarieren.
Grundsätzlich können Funktionen in zwei Arten unterteilt werden: