Python -Tutorial

Python-HOME Python-Einführung Python-Erste Schritte Python-Syntax Python-Kommentare Python-Variablen Python-Datentypen Python-Zahlen Python-Casting Python-Strings Python-Booleans Python-Operatoren Python-Listen Python-Tupel Python-Sets Python-Wörterbücher Python Wenn ... Sonst Python-While-Schleifen Python-For-Schleifen Python-Funktionen Python-Lambda Python-Arrays Python-Klassen/Objekte Python-Vererbung Python-Iteratoren Python-Bereich Python-Module Python-Daten Python-Mathematik Python-JSON Python-RegEx Python-PIP Python Versuchen ... Außer Python-Benutzereingabe Formatierung von Python-Strings

Umgang mit Dateien

Umgang mit Python-Dateien Python-Dateien lesen Python-Dateien schreiben/erstellen Python-Dateien löschen

Python-Module

NumPy-Tutorial Panda-Komplettlösung Scipy-Tutorial

Python-Matplotlib

Matplotlib-Einführung Matplotlib loslegen Matplotlib-Pyplot Matplotlib-Plotten Matplotlib-Marker Matplotlib-Linie Matplotlib-Labels Matplotlib-Raster Matplotlib-Subplots Matplotlib-Scatter Matplotlib-Bars Matplotlib-Histogramme Matplotlib-Kreisdiagramme

Maschinelles Lernen

Einstieg Mittlerer Medianmodus Standardabweichung Perzentil Datenverteilung Normale Datenverteilung Streudiagramm Lineare Regression Polynomiale Regression Mehrfache Regression Skala Trainieren/Testen Entscheidungsbaum

Python-MySQL

MySQL-erste Schritte MySQL-Datenbank erstellen MySQL-Tabelle erstellen MySQL-Einfügung MySQL-Auswahl MySQL-Wo MySQL-Reihenfolge nach MySQL löschen MySQL-Drop-Tabelle MySQL-Update MySQL-Limit MySQL-Beitritt

Python-MongoDB

Beginnen Sie mit MongoDB MongoDB Datenbank erstellen MongoDB-Create-Sammlung MongoDB-Einfügung MongoDB-Suche MongoDB-Abfrage MongoDB-Sortierung MongoDB löschen MongoDB-Drop-Sammlung MongoDB-Update MongoDB-Limit

Python-Referenz

Python-Übersicht Eingebaute Python-Funktionen Python-String-Methoden Python-Listenmethoden Methoden des Python-Wörterbuchs Python-Tupelmethoden Python-Set-Methoden Python-Dateimethoden Python-Schlüsselwörter Python-Ausnahmen Python-Glossar

Modulreferenz

Zufallsmodul Anforderungsmodul Statistikmodul Mathe-Modul cMath-Modul

Python-Anleitung

Listenduplikate entfernen Einen String umkehren Fügen Sie zwei Zahlen hinzu

Python-Beispiele

Python-Beispiele Python-Compiler Python-Übungen Python-Quiz Python-Zertifikat

Python- Funktionen


Eine Funktion ist ein Codeblock, der nur ausgeführt wird, wenn er aufgerufen wird.

Sie können Daten, sogenannte Parameter, an eine Funktion übergeben.

Eine Funktion kann als Ergebnis Daten zurückgeben.


Erstellen einer Funktion

In Python wird eine Funktion mit dem Schlüsselwort def definiert:

Beispiel

def my_function():
  print("Hello from a function")

Aufruf einer Funktion

Um eine Funktion aufzurufen, verwenden Sie den Funktionsnamen gefolgt von Klammern:

Beispiel

def my_function():
  print("Hello from a function")

my_function()

Argumente

Informationen können als Argumente an Funktionen übergeben werden.

Argumente werden nach dem Funktionsnamen innerhalb der Klammern angegeben. Sie können beliebig viele Argumente hinzufügen, trennen Sie sie einfach durch ein Komma.

Das folgende Beispiel hat eine Funktion mit einem Argument (fname). Wenn die Funktion aufgerufen wird, übergeben wir einen Vornamen, der innerhalb der Funktion verwendet wird, um den vollständigen Namen auszugeben:

Beispiel

def my_function(fname):
  print(fname + " Refsnes")

my_function("Emil")
my_function("Tobias")
my_function("Linus")

Argumente werden in Python-Dokumentationen oft zu args abgekürzt.



Parameter oder Argumente?

Die Begriffe Parameter und Argument können für dasselbe verwendet werden: Informationen, die an eine Funktion übergeben werden.

Aus Sicht einer Funktion:

Ein Parameter ist die Variable, die in der Funktionsdefinition in Klammern aufgeführt ist.

Ein Argument ist der Wert, der an die Funktion gesendet wird, wenn sie aufgerufen wird.


Anzahl der Argumente

Standardmäßig muss eine Funktion mit der richtigen Anzahl von Argumenten aufgerufen werden. Das heißt, wenn Ihre Funktion 2 Argumente erwartet, müssen Sie die Funktion mit 2 Argumenten aufrufen, nicht mehr und nicht weniger.

Beispiel

Diese Funktion erwartet 2 Argumente und erhält 2 Argumente:

def my_function(fname, lname):
  print(fname + " " + lname)

my_function("Emil", "Refsnes")
Wenn Sie versuchen, die Funktion mit 1 oder 3 Argumenten aufzurufen, erhalten Sie eine Fehlermeldung:

Beispiel

Diese Funktion erwartet 2 Argumente, bekommt aber nur 1:

def my_function(fname, lname):
  print(fname + " " + lname)

my_function("Emil")

Willkürliche Argumente, *args

Wenn Sie nicht wissen, wie viele Argumente an Ihre Funktion übergeben werden, fügen Sie ein *vor dem Parameternamen in der Funktionsdefinition hinzu.

Auf diese Weise erhält die Funktion ein Tupel von Argumenten und kann entsprechend auf die Elemente zugreifen:

Beispiel

Wenn die Anzahl der Argumente unbekannt ist, fügen Sie ein *vor dem Parameternamen hinzu:

def my_function(*kids):
  print("The youngest child is " + kids[2])

my_function("Emil", "Tobias", "Linus")

Willkürliche Argumente werden in Python-Dokumentationen oft zu *args abgekürzt.


Schlüsselwortargumente

Sie können Argumente auch mit der Schlüssel = Wert -Syntax senden.

Auf diese Weise spielt die Reihenfolge der Argumente keine Rolle.

Beispiel

def my_function(child3, child2, child1):
  print("The youngest child is " + child3)

my_function(child1 = "Emil", child2 = "Tobias", child3 = "Linus")

Der Ausdruck Schlüsselwortargumente wird in Python-Dokumentationen oft zu kwargs abgekürzt .


Willkürliche Schlüsselwortargumente, **kwargs

Wenn Sie nicht wissen, wie viele Schlüsselwortargumente an Ihre Funktion übergeben werden, fügen Sie zwei Sternchen: **vor dem Parameternamen in der Funktionsdefinition hinzu.

Auf diese Weise erhält die Funktion ein Wörterbuch mit Argumenten und kann entsprechend auf die Elemente zugreifen:

Beispiel

Wenn die Anzahl der Schlüsselwortargumente unbekannt ist, fügen Sie **vor dem Parameternamen ein Doppel hinzu:

def my_function(**kid):
  print("His last name is " + kid["lname"])

my_function(fname = "Tobias", lname = "Refsnes")

Willkürliche Kword-Argumente werden in Python-Dokumentationen oft zu **kwargs abgekürzt .


Standardparameterwert

Das folgende Beispiel zeigt, wie ein Standardparameterwert verwendet wird.

Wenn wir die Funktion ohne Argument aufrufen, verwendet sie den Standardwert:

Beispiel

def my_function(country = "Norway"):
  print("I am from " + country)

my_function("Sweden")
my_function("India")
my_function()
my_function("Brazil")

Übergeben einer Liste als Argument

Sie können beliebige Datentypen von Argumenten an eine Funktion senden (Zeichenfolge, Zahl, Liste, Wörterbuch usw.), und sie werden innerhalb der Funktion als derselbe Datentyp behandelt.

Wenn Sie beispielsweise eine Liste als Argument senden, ist es immer noch eine Liste, wenn sie die Funktion erreicht:

Beispiel

def my_function(food):
  for x in food:
    print(x)

fruits = ["apple", "banana", "cherry"]

my_function(fruits)

Rückgabewerte

Um eine Funktion einen Wert zurückgeben zu lassen, verwenden Sie die return Anweisung:

Beispiel

def my_function(x):
  return 5 * x

print(my_function(3))
print(my_function(5))
print(my_function(9))

Die Pass-Anweisung

functionDefinitionen dürfen nicht leer sein, aber wenn Sie aus irgendeinem Grund eine functionDefinition ohne Inhalt haben, geben Sie die passAnweisung ein, um eine Fehlermeldung zu vermeiden.

Beispiel

def myfunction():
  pass

Rekursion

Python akzeptiert auch Funktionsrekursion, was bedeutet, dass eine definierte Funktion sich selbst aufrufen kann.

Rekursion ist ein allgemeines mathematisches und Programmierkonzept. Es bedeutet, dass eine Funktion sich selbst aufruft. Dies hat den Vorteil, dass Sie Daten durchlaufen können, um zu einem Ergebnis zu gelangen.

Der Entwickler sollte mit der Rekursion sehr vorsichtig sein, da es ziemlich einfach sein kann, eine Funktion zu schreiben, die niemals beendet wird, oder eine Funktion, die übermäßig viel Speicher oder Prozessorleistung verbraucht. Korrekt geschrieben kann Rekursion jedoch ein sehr effizienter und mathematisch eleganter Programmieransatz sein.

In diesem Beispiel ist tri_recursion() eine Funktion, die wir so definiert haben, dass sie sich selbst aufruft ("recurse"). Wir verwenden die Variable k als Daten, die bei jeder Rekursion um ( -1 ) dekrementiert werden. Die Rekursion endet, wenn die Bedingung nicht größer als 0 ist (dh wenn sie 0 ist).

Für einen neuen Entwickler kann es einige Zeit dauern, bis er herausfindet, wie genau dies funktioniert. Der beste Weg, dies herauszufinden, besteht darin, ihn zu testen und zu modifizieren.

Beispiel

Rekursionsbeispiel

def tri_recursion(k):
  if(k > 0):
    result = k + tri_recursion(k - 1)
    print(result)
  else:
    result = 0
  return result

print("\n\nRecursion Example Results")
tri_recursion(6)

Testen Sie sich mit Übungen

Übung:

Erstellen Sie eine Funktion namens my_function.

:
  print("Hello from a function")