Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
**kwargs | Arguments in Function
Intermediate Python: Arguments, Scopes and Decorators
course content

Contenido del Curso

Intermediate Python: Arguments, Scopes and Decorators

Intermediate Python: Arguments, Scopes and Decorators

1. Packing and Unpacking
2. Arguments in Function
3. Function as an Argument
4. Variable Scope
5. Decorators

book**kwargs

Now, let's move on to keyword arbitrary arguments or **kwargs. The principle of how **kwargs works is the same as for *args, but it accepts keyword arguments instead of positional ones. **kwargs packs information into a dictionary, so we will work with it accordingly.

1234567
def personal_info(name, **kwargs): print(f"Name: {name}") for key, value in kwargs.items(): print(f"{key.capitalize()}: {value}") personal_info("Sarah", surname="Conor", son="John") personal_info("Natalie", cats="3", breed="Maine Coon")
copy

The correct order for the arguments is as follows:

  1. Positional
  2. Optional
  3. *args
  4. **kwargs
1234
def new_func(a, b=0, *args, **kwargs): print(f'a = {a}, b = {b}, args = {args}, kwargs = {kwargs}') new_func(1, 2, 'Love', 'Hope', name='Anna', age=20)
copy

If you want to unpack dictionaries, you need to use ** before the dictionary variable.

1. What does **kwargs in a Python function signature represent?
2. What will print_details(name="Alice", age=30) output?
3. Given the function definition below, which call is valid?
What does **kwargs in a Python function signature represent?

What does **kwargs in a Python function signature represent?

Selecciona la respuesta correcta

What will print_details(name="Alice", age=30) output?

What will print_details(name="Alice", age=30) output?

Selecciona la respuesta correcta

Given the function definition below, which call is valid?

Given the function definition below, which call is valid?

Selecciona la respuesta correcta

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 4
some-alt