ÎncepețiÎncepe gratuit

Funcții cu argumente cheie de lungime variabilă (**kwargs)

Să mergem mai departe cu ceea ce ai învățat despre argumentele flexibile – ai folosit *args, acum vei folosi **kwargs! Diferența constă în faptul că **kwargs îți permite să transmiți un număr variabil de argumente cheie unei funcții. Reține din videoclipul anterior că, în interiorul definiției funcției, kwargs este un dicționar.

Pentru a înțelege mai bine această idee, vei folosi **kwargs în acest exercițiu pentru a defini o funcție care acceptă un număr variabil de argumente cheie. Funcția simulează un sistem simplu de raportare a stării unui personaj dintr-un film.

Acest exercițiu face parte din cursul

Introducere în funcții în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Completează antetul funcției cu numele report_status. Aceasta acceptă un singur argument flexibil: **kwargs.
  • Iterează prin perechile cheie-valoare ale kwargs pentru a afișa cheile și valorile, separate prin două puncte ':'.
  • În primul apel al funcției report_status(), transmite următoarele perechi cheie-valoare: name="luke", affiliation="jedi" și status="missing".
  • În al doilea apel al funcției report_status(), transmite următoarele perechi cheie-valoare: name="anakin", affiliation="sith lord" și status="deceased".

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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=____)
Editează și rulează codul