Erklärung zur Lektion
Nach dieser Lektion kannst du:
Eine Funktion bündelt wiederverwendbares Verhalten unter einem Namen. Definiere sie mit def, führe die benötigten Parameter in den Klammern auf und rücke den Funktionskörper ein:
def calculate_total(price, quantity):
return price * quantityprice und quantity sind Parameter. Die Werte, die du bei einem Aufruf wie calculate_total(12.5, 4) übergibst, sind Argumente.
Der wichtigste Unterschied in dieser Lektion ist return gegenüber print(). print() zeigt einen Wert an, aber return sendet ein Ergebnis an den Aufrufer zurück. Zurückgegebene Werte lassen sich speichern, vergleichen, formatieren, an eine andere Funktion übergeben oder von automatisierten Tests prüfen.
Eine Funktion kann verschiedene Arten von Werten zurückgeben, darunter Strings, Zahlen und boolesche Werte. Wenn eine Bedingung ein endgültiges Ergebnis festlegt, kann eine frühe Rückgabe die Funktion sofort beenden und unnötige Verschachtelung vermeiden.
Wenn die Ausführung das Ende einer Funktion ohne return erreicht, gibt Python None zurück.
Der Aufrufer erhält den berechneten Wert und kann ihn weiterverwenden.
def estimate_storage(file_size_mb, copies):
return file_size_mb * copies
required_mb = estimate_storage(18, 3)
print(f"Storage: {required_mb} MB")Ausgabe:
Storage: 54 MBDie Funktion berechnet; der Aufrufer entscheidet, wie das Ergebnis angezeigt wird.
Parameter machen die Hilfsfunktion für unterschiedliche Werte wiederverwendbar.
def format_environment(name, region):
return f"{name.lower()}@{region.upper()}"
print(format_environment("Staging", "eu"))Ausgabe:
staging@EUDer zurückgegebene String wird aus beiden Argumenten aufgebaut.
Ein Vergleich kann direkt zurückgegeben werden.
def is_within_limit(used, limit):
return used <= limit
print(is_within_limit(72, 100))Ausgabe:
TrueDas Ergebnis ist ein boolescher Wert, nicht der Text "True".
Eine frühe Rückgabe behandelt den blockierenden Fall vor dem normalen Ergebnis.
def deployment_status(failed_checks, is_frozen):
if is_frozen:
return "frozen"
if failed_checks > 0:
return "blocked"
return "ready"
print(deployment_status(0, False))Ausgabe:
readySobald Python ein return erreicht, endet die Funktion sofort.
| Ziel | Python |
|---|---|
| Wiederverwendbares Verhalten definieren | def function_name(parameters): |
| Ein Ergebnis an den Aufrufer senden | return value |
| Einen Wert nur anzeigen | print(value) |
| Eine Funktion beenden, wenn eine Regel endgültig ist | Frühes return |
| Kein ausdrücklich zurückgegebener Wert | Python gibt None zurück |
return nicht mehr ausgeführt wird.