So rufen Sie eine Funktion auf in Python (Beispiel)
⚡ Intelligente Zusammenfassung
Funktionen in Python Es handelt sich um wiederverwendbare Codeblöcke, die bei Aufruf ausgeführt werden und mit der `def`-Anweisung definiert sind. Sie akzeptieren Argumente, geben Werte zurück und verwenden eine einheitliche Einrückung, um die Anweisungen innerhalb einer Funktion zu gruppieren.
Was ist Funktion in Python?
A Funktion in Python Eine Methode ist ein Codeabschnitt, der beim Aufruf ausgeführt wird. Sie dient dazu, Code an mehreren Stellen innerhalb eines Programms zu verwenden. Sie wird auch als Methode oder Prozedur bezeichnet. Python Es bietet viele integrierte Funktionen wie print(), input(), compile() und exec(), gibt Ihnen aber auch die Freiheit, Ihre eigenen Funktionen zu erstellen.
So definieren und rufen Sie eine Funktion in Python
Eine Funktion in Python wird durch die „def“-Anweisung, gefolgt vom Funktionsnamen und Klammern ( () ), definiert.
Ejemplo:
Wir definieren eine Funktion mit dem Befehl „def func1():“ und rufen diese auf. Die Ausgabe der Funktion lautet: „Ich lerne Python Funktion".
Der Funktionsaufruf func1() ruft unsere Definition func1() auf und gibt den Befehl „Ich lerne“ aus. Python Funktion: Keine.
Es gibt eine Reihe von Regeln in Python Programmierung um eine Funktion zu definieren.
- Alle Argumente oder Eingabeparameter müssen innerhalb dieser Klammern stehen.
- Die erste Anweisung der Funktion kann eine optionale Anweisung sein – der Docstring oder Dokumentationsstring der Funktion.
- Der Code innerhalb jeder Funktion beginnt mit einem Doppelpunkt (:) und sollte eingerückt werden (Leerzeichen).
- Die Anweisung `return (Ausdruck)` beendet eine Funktion und gibt optional einen Wert an den Aufrufer zurück. Eine `return`-Anweisung ohne Argumente entspricht `return None`.
Bedeutung der Einrückung (Leerzeichen) in Python
Bevor wir uns damit vertraut machen Python Funktionen ist es wichtig, dass wir die Einrückungsregel verstehen, um zu deklarieren Python Funktionen, und diese Regeln gelten auch für andere Elemente von Python ebenso wie das Deklarieren von Bedingungen, Schleifen oder Variablen.
Python folgt einem bestimmten Einrückungsstil zur Definition des Codes. Python Funktionen haben keine expliziten Anfangs- und Endzeichen wie geschweifte Klammern, die den Beginn und das Ende der Funktion kennzeichnen; sie sind auf die Einrückung angewiesen. Betrachten wir dazu das einfache Beispiel des Befehls „print“. Wenn wir die Funktion „print“ direkt unter die Zeile `def func1():` schreiben, erhalten wir die Fehlermeldung „Einrückungsfehler: Einrückung erwartet“.
Wenn Sie nun vor der „print“-Funktion einen Einzug (ein Leerzeichen) einfügen, sollte die Ausgabe wie erwartet erfolgen.
Mindestens ein Einrücken genügt, damit Ihr Code korrekt funktioniert. Es empfiehlt sich jedoch, etwa 3–4 Leerzeichen Einrückung zu lassen, um Ihre Funktion aufzurufen.
Es ist außerdem wichtig, dass Sie beim Festlegen der Einrückung diese für den restlichen Code beibehalten. Wenn wir beispielsweise im folgenden Screenshot eine weitere Anweisung („still in func1“) aufrufen, die nicht direkt unter der ersten print-Anweisung deklariert ist, wird ein Einrückungsfehler angezeigt: „unindent stimmt mit keiner anderen Einrückungsebene überein.“
Wenn wir nun für beide Anweisungen die gleiche Einrückung verwenden und sie in derselben Zeile ausrichten, erhalten wir die erwartete Ausgabe.
Wie funktioniert der Rückgabewert?
Der Return-Befehl in Python Gibt an, welcher Wert an den Aufrufer der Funktion zurückgegeben werden soll. Betrachten wir dazu das folgende Beispiel.
Schritt 1) Die Funktion gibt nichts zurück
Hier sehen wir, wann eine Funktion keinen Rückgabewert liefert. Angenommen, wir möchten das Quadrat von 4 berechnen, und die Funktion sollte bei Ausführung des Codes das Ergebnis „16“ liefern. Das tut sie auch, wenn wir einfach den Code „print x*x“ verwenden. Ruft man jedoch die Funktion „print square“ auf, gibt sie „None“ aus. Das liegt daran, dass beim Funktionsaufruf keine Rekursion stattfindet und die Funktion am Ende abbricht. Python Gibt "None" zurück, wenn das Ende der Funktion überschritten wird.
Schritt 2) Ersetzen Sie den Druckbefehl durch einen Zuweisungsbefehl.
Um dies zu verdeutlichen, ersetzen wir den Druckbefehl durch einen Zuweisungsbefehl. Schauen wir uns die Ausgabe an.
Der Befehl „print square (4)“ gibt normalerweise den Wert des Objekts zurück. Da wir hier keine spezifische Funktion ausführen, wird „None“ zurückgegeben.
Schritt 3) Verwenden Sie die Funktion 'return' und führen Sie den Code aus.
Nun sehen wir uns an, wie man die Ausgabe mithilfe des Befehls „return“ abruft. Wenn Sie die Funktion „return“ verwenden und den Code ausführen, erhalten Sie die Ausgabe „16“.
Schritt 4) Führen Sie den Befehl „Quadrat drucken“ aus.
Funktionen in Python sind selbst ein Objekt, und ein Objekt hat einen Wert. Wir werden hier sehen, wie Python Die Funktion verarbeitet ein Objekt. Wenn Sie den Befehl „print square“ ausführen, gibt er den Wert des Objekts zurück. Da wir kein Argument übergeben haben, gibt es keine spezifische Funktion, die hier aufgerufen werden könnte. Daher wird ein Standardwert (0x021B2D30) zurückgegeben, der der Speicherort des Objekts entspricht. In der Praxis Python Bei diesem Programm werden Sie das wahrscheinlich nie brauchen.
Argumente in Funktionen
Ein Argument ist ein Wert, der der Funktion beim Aufruf übergeben wird.
Mit anderen Worten: Auf der Aufruferseite ist es ein Argument, auf der Funktionsseite ein Parameter.
Mal sehen wie Python Die Argumente funktionieren.
Schritt 1) Die Argumente werden in der Funktionsdefinition deklariert. Beim Aufruf der Funktion können Sie die Werte für diese Argumente wie unten gezeigt übergeben.
Schritt 2) Um einen Standardwert für ein Argument festzulegen, weisen Sie ihm bei der Funktionsdefinition einen Wert zu.
Ejemplo: x hat keinen Standardwert. Der Standardwert von y ist 0. Wenn wir beim Aufruf der Multiplikationsfunktion nur ein Argument angeben, Python weist x den angegebenen Wert zu, solangeping Der Wert von y ist gleich 0. Daher ist das Produkt von x*y gleich 0.
Schritt 3) Diesmal ändern wir den Wert auf y=2 anstatt des Standardwerts y=0, und es wird die Ausgabe (4×2)=8 zurückgegeben.
Schritt 4) Sie können auch die Reihenfolge ändern, in der die Argumente übergeben werden. PythonHier haben wir die Reihenfolge der Werte x und y umgekehrt, sodass x=4 und y=2 gilt.
Schritt 5) Mehrere Argumente können auch als Array übergeben werden. In diesem Beispiel rufen wir die mehreren Argumente (1,2,3,4,5) mit der Funktion (*args) auf.
Ejemplo: Wir haben mehrere Argumente als die Zahlen (1,2,3,4,5) deklariert; wenn wir die Funktion (*args) aufrufen, gibt sie die Ausgabe als (1,2,3,4,5) aus.
Tipps:
- In Python In Version 2.7 wird Funktionsüberladung nicht unterstützt. Funktionsüberladung ermöglicht es, mehrere Methoden mit demselben Namen, aber unterschiedlicher Implementierung zu erstellen. In Version 2.7 wird Funktionsüberladung vollständig unterstützt. Python 3.
- Es herrscht eine ziemliche Verwirrung zwischen Methoden und Funktionen. Methoden in Python sind Objektinstanzen zugeordnet, Funktionen hingegen nicht. Python eine Methode aufruft, bindet sie den ersten Parameter dieses Aufrufs an die entsprechende Objektreferenz. Einfach ausgedrückt, eine eigenständige Funktion in Python ist eine „Funktion“, während eine Funktion, die ein Attribut einer Klasse oder einer Instanz ist, eine „Methode“ ist.
Hier ist das komplette Python 3 Code
#define a function
def func1():
print ("I am learning Python function")
print ("still in func1")
func1()
def square(x):
return x*x
print(square(4))
def multiply(x,y=0):
print("value of x=",x)
print("value of y=",y)
return x*y
print(multiply(y=2,x=4))
Hier ist das komplette Python 2 Code
#define a function
def func1():
print " I am learning Python function"
print " still in func1"
func1()
def square(x):
return x*x
print square(4)
def multiply(x,y=0):
print"value of x=",x
print"value of y=",y
return x*y
print multiply(y=2,x=4)















