Benutzerdefinierte Funktionen
Eine benutzerdefinierte Funktion ist ein Codeblock, den Sie erstellen, um eine bestimmte Aufgabe auszuführen. Im Gegensatz zu eingebauten Funktionen, die von Python bereitgestellt werden, werden benutzerdefinierte Funktionen von Ihnen geschrieben, um spezifische Probleme in Ihren Programmen zu lösen. Nach der Definition können diese Funktionen mehrfach wiederverwendet werden, was Ihren Code organisierter, effizienter und leichter wartbar macht.
Sehen wir uns nun an, wie Alex demonstriert, wie man benutzerdefinierte Funktionen erstellt und verwendet, um Aufgaben zu vereinfachen:
Die grundlegende Struktur einer benutzerdefinierten Funktion in Python sieht wie folgt aus:
python
def
: Dieses Schlüsselwort wird verwendet, um die Definition einer Funktion zu beginnen;function_name
: Dies ist der Name, den Sie Ihrer Funktion geben. Er sollte beschreibend sein, damit der Code besser lesbar ist;argument_1, argument_2
: Dies sind die Namen der Variablen, die Sie an die Funktion übergeben. Sie dienen als Platzhalter für die Werte, die Sie beim Aufruf der Funktion bereitstellen. Eine Funktion kann null oder mehr Parameter haben;Der Doppelpunkt
:
kennzeichnet den Beginn des Funktionsblocks;# Code block
: Dies ist der Rumpf der Funktion, in dem Sie den auszuführenden Code schreiben. Er muss wie bei Schleifen oder bedingten Anweisungen eingerückt sein;return
: Diese Anweisung wird verwendet, um die Funktion zu beenden und ein Ergebnis zurückzugeben. Nicht alle Funktionen benötigen eine return-Anweisung, aber sie ist nützlich, wenn Sie einen Wert an die Aufrufstelle zurückgeben möchten.
Parameter und Argumente
Parameter sind die Variablen, die in den Klammern der Funktionsdefinition aufgeführt sind. Sie dienen dazu, Werte (Argumente) zu empfangen, die an die Funktion übergeben werden.
Argumente sind die tatsächlichen Werte, die Sie der Funktion beim Aufruf übergeben. Diese Werte werden den Parametern der Funktion zugewiesen.
def greet_customer(name): print(f"Hello, {name}! Welcome to our store.") greet_customer("Alice")
Hinweis
Im obigen Beispiel ist
name
der Parameter und der String"Alice"
das Argument.
Void-Funktionen
Wie oben gezeigt, müssen nicht alle Funktionen einen Wert zurückgeben. Einige Funktionen führen eine Aufgabe aus, geben aber nichts an den Aufrufer zurück. Diese werden als Void-Funktionen bezeichnet.
In Python ist eine Void-Funktion eine benutzerdefinierte Funktion, die entweder keine return
-Anweisung enthält oder eine return
-Anweisung hat, die keinen Wert zurückgibt. In beiden Fällen gibt die Funktion standardmäßig None
zurück.
Im obigen Beispiel ist greet_customer()
eine Void-Funktion, da sie die Aktion des Ausgebens einer Begrüßung ausführt, aber kein Ergebnis zurückgibt, das gespeichert oder anderweitig im Programm verwendet werden könnte.
Beispiel für eine Void-Funktion
Hier ist ein weiteres Beispiel für eine Void-Funktion, bei der die return
-Anweisung verwendet wird, um die Ausführung der Funktion zu beenden, aber dennoch keinen Wert zurückgibt.
# Function to check stock levels of grocery items def check_stock(inventory): for item, stock in inventory.items(): if stock < 10: print(f"Warning: {item} is running low on stock with only {stock} units left!") print("Please restock the item before proceeding with the check.") return # Stops the function if stock is below 10 print(f"{item} has sufficient stock: {stock} units.") print("All items have sufficient stock.") # Example inventory of a grocery store inventory = { "Apples": 50, "Bananas": 30, "Milk": 8, # This will trigger the early exit "Bread": 25 } # Check stock levels check_stock(inventory)
Anwendungsbeispiel
Betrachten wir nun eine Funktion, die einen bestimmten Wert zurückgibt. Wenn Sie beispielsweise häufig Rabatte für verschiedene Produkte in Ihrem Geschäft berechnen müssen, können Sie eine Funktion erstellen, die die Rabattberechnung übernimmt. Diese Funktion kann dann bei Bedarf wiederverwendet werden.
# `cost` and `discount_rate` are the parameters of the function def calculate_discounted_price(cost, discount_rate): final_price = cost * (1 - discount_rate) return final_price # Call the `calculate_discounted_price` function and pass in `cost` and `discount_rate` values as arguments apples_final_price = calculate_discounted_price(1.2, 0.10) milk_final_price = calculate_discounted_price(2.2, 0.15) bread_final_price = calculate_discounted_price(0.8, 0.05) # Display the discounted prices print(f"The discounted price of apples is ${apples_final_price}") print(f"The discounted price of milk is ${milk_final_price}") print(f"The discounted price of bread is ${bread_final_price}")
Swipe to start coding
Definition einer Funktion zur Berechnung der Gesamtkosten eines Produkts durch Multiplikation von Preis und verkaufter Menge.
- Erstellung einer Funktion mit dem Namen
calculate_total_cost()
, die zwei Parameter entgegennimmt:price
undquantity
. - Multiplikation von
price
mitquantity
innerhalb der Funktion, um die Gesamtkosten zu ermitteln. - Rückgabe des Ergebnisses aus der Funktion.
Ausgabebedingungen
- Aufruf von
calculate_total_cost()
mitprice = 1.50
undquantity = 10
. - Ausgabe des Ergebnisses im Format:
The total cost for apples is $<apples_total_cost>
Lösung
Danke für Ihr Feedback!