Funktionen mit Schlüsselwortargumenten variabler Länge (\*\*kwargs)
Lass uns das, was du über flexible Argumente gelernt hast, weiter vertiefen – du hast *args bereits verwendet, jetzt setzt du **kwargs ein! Das Besondere an **kwargs ist, dass es dir erlaubt, eine variable Anzahl von Schlüsselwortargumenten an Funktionen zu übergeben. Rufe dir aus dem vorherigen Video in Erinnerung, dass kwargs in der Funktionsdefinition ein Dictionary ist.
Um dies zu verinnerlichen, definierst du in dieser Übung mit **kwargs eine Funktion, die eine variable Anzahl von Schlüsselwortargumenten akzeptiert. Die Funktion simuliert ein einfaches Statusberichtssystem, das den Status einer Figur in einem Film ausgibt.
Diese Übung ist Teil des Kurses
Einführung in Funktionen in Python
Anleitung zur Übung
- Schließe den Funktionskopf mit dem Funktionsnamen
report_statusab. Sie akzeptiert ein einzelnes flexibles Argument**kwargs. - Iteriere über die Schlüssel-Wert-Paare von
kwargs, um die Schlüssel und Werte, getrennt durch einen Doppelpunkt ':', auszugeben. - Beim ersten Aufruf von
report_status()übergibst du die folgenden Schlüsselwort-Werte-Paare:name="luke",affiliation="jedi"undstatus="missing". - Im zweiten Aufruf von
report_status()übergibst du die folgenden Schlüsselwort-Werte-Paare:name="anakin",affiliation="sith lord"undstatus="deceased".
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Define report_status
def ____(____):
"""Print out the status of a movie character."""
print("\nBEGIN: REPORT\n")
# Iterate over the key-value pairs of kwargs
for ____, ____ in kwargs.items():
# Print out the keys and values, separated by a colon ':'
print(____ + ": " + ____)
print("\nEND REPORT")
# First call to report_status()
# Second call to report_status()
report_status(name=____, affiliation=____, status=____)