Optionale Argumente in Python
In Python gibt es etwas, das als Standardargument bezeichnet wird. Es ist auch als optionales Argument oder optionaler Parameter in Python bekannt. Ein Argument oder ein Parameter bedeuten beide das Gleiche. Sie können diese Wörter austauschbar verwenden. Ein Argument oder ein Parameter ist eine Eingabe, die eine Funktion entgegennimmt.
Python-Funktion mit mehreren optionalen Argumenten
Immer wenn Sie eine Funktion aufrufen, müssen Sie einige Argumente an die Funktion übergeben, je nachdem, ob eine Funktion Argumente entgegennimmt oder nicht. Es ist nicht zwingend erforderlich, ein Argument an eine Funktion zu übergeben. Eine Funktion kann kein Argument annehmen oder eine beliebige Anzahl von Argumenten (je nachdem, wie die Funktion definiert ist). Es gibt zwei Möglichkeiten, wie wir mehrere Argumente übergeben können.
Verwendung von *args
(Nicht-Schlüsselwort-Argumente)
# Function Defination
def myfunction(first_name, last_name, *args):
print(first_name)
print(last_name)
for argument in args:
print(argument)
# Calling the Function
myfunction("Tim", "White", 999888999, 30)
Ausgabe:
Tim
White
999888999
30
Verwendung von **kargs
(Schlüsselwort-Argumente)
def myFunction(**kwargs):
# printing all values which are passed in as an argument
for key, value in kwargs.items():
print("%s = %s" % (key, value))
# Calling the Function
myFunction(first_name="Tim", last_name="White", mob=99999999, age="30")
Ausgabe:
first_name = Tim
last_name = White
mob = 99999999
age = 30
Sowohl *args
als auch **kargs
sind Argumente mit variabler Länge, die verwendet werden, um eine variable Anzahl von Argumenten an eine Funktion zu übergeben.
Wenn Sie eine Funktion erstellen, müssen Sie festlegen, wie viele Parameter oder Argumente sie als Eingabe annehmen soll. Diese werden formale Argumente genannt. Und wenn Sie die Funktion aufrufen, müssen Sie einige Werte an die Funktion übergeben, und diese Werte werden tatsächliche Argumente genannt.
Argumente in Python optional machen
Nehmen wir an, Sie haben eine Funktion, die drei Argumente oder Parameter name
, number
und age
als Eingabe benötigt.
# Function Defination
def personalDetails(name, number, age):
print("This function takes 3 parameters as input")
Wenn Sie die Funktion personalDetails
aufrufen wollen, müssen Sie alle 3 Parameter als Eingabe an diese Funktion übergeben.
def personalDetails(name, number, age):
print("This function takes 3 parameters as input")
print("Name: ", name)
print("Number: ", number)
print("Age: ", age)
# Calling the function
personalDetails("Adam", 987654321, 18)
Ausgabe:
This function takes 3 parameters as input
Name: Adam
Number: 987654321
Age: 18
Wenn Sie hier beim Aufruf einer Funktion einen der Parameter übersehen oder vergessen haben, können Sie einen Fehler erhalten (TypeError: personalDetails missing a required positional argument
).
Wenn Sie Ihr Alter nicht als Argument an die obige Funktion übergeben wollen, können Sie etwas verwenden, das optionales Argument genannt wird. Sie können in Python eine beliebige Anzahl von Argumenten oder Parametern optional machen. Um ein Argument optional zu machen, müssen Sie diesem Argument einen Standardwert zuweisen.
Hier, um das Argument age
optional zu machen, können Sie dem Argument age
in der Funktionsdefinition einen Standardwert zuweisen, um es optional zu machen. In diesem Fall initialisieren wir es mit 0
oder einem beliebigen anderen Wert, den Sie wünschen. Nun wird Python dieses Argument als optionales Argument betrachten. Auch wenn Sie dem Parameter age
keinen Wert übergeben, wird die Funktion funktionieren und den Standardwert verwenden, der in diesem Fall 0
ist.
def personalDetails(name, number, age=0):
print("Age is now an optional argument.")
print("Age is: ", age)
# Calling the function
personalDetails("Sam", 123456789)
Ausgabe:
Age is now an optional argument.
Age is: 0
Auch wenn Sie den Wert des Arguments age
beim Aufruf der Funktion personalDetails
angeben wollen, können Sie das tun. Und nun wird der neue Wert, den Sie angegeben haben, anstelle des Standardwertes berücksichtigt.
def personalDetails(name, number, age=0):
print("Age is now an optional argument.")
print("Age is: ", age)
# Calling the function
personalDetails("Sam", 123456789, 25)
Ausgabe:
Age is now an optional argument.
Age is: 25
Fazit
Wann immer Sie ein Argument mit einem Standardwert initialisieren, wird es als Standardargument bezeichnet. Dadurch wird dieses Argument letztendlich auch optional, da es nun nicht mehr zwingend erforderlich ist, beim Aufruf der Funktion einen Wert an dieses Argument zu übergeben. Dies wird in Python als optionales Argument oder optionaler Parameter bezeichnet.
Wenn Sie aber beim Aufruf der Funktion einen Wert in das optionale Argument übergeben haben, dann wird die Funktion diesen neuen Wert anstelle des Standardwerts nehmen.
Sahil is a full-stack developer who loves to build software. He likes to share his knowledge by writing technical articles and helping clients by working with them as freelance software engineer and technical writer on Upwork.
LinkedIn