**kwargs

Dodatkowe nazwane argumenty zbierają się w słowniku. Czytaj je przez .get(key, default).

Składnia

def greet(name, **opts):
return opts.get("title", "bot") + " " + name
  • **opts zbiera tylko nazwane wartości, nie pozycyjne.

Przykład

def greet(name, **opts):
    return opts.get("title", "bot") + " " + name

print(greet("Pip"))
print(greet("Pip", title="captain"))

Wynik:

bot Pip
captain Pip

Typowe błędy

  • Podanie drugiego pozycyjnego argumentu do funkcji, która na extras ma tylko **opts, to TypeError.

Ćwicz to