Зміст курсу
Середній Рівень Python: Аргументи, Генератори та Декоратори
Середній Рівень Python: Аргументи, Генератори та Декоратори
**kwargs
Тепер перейдемо до keyword arbitrary arguments
або **kwargs
. Принцип роботи **kwargs
такий самий, як і у *args
, але він приймає ключові аргументи замість позиційних. **kwargs
пакує інформацію у словник, тому ми будемо працювати з ним відповідно.
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")
Правильний порядок аргументів наступний:
- Позиційні
- Необов'язкові
- *args
- **kwargs
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)
Якщо ви хочете розпакувати словники, вам потрібно використовувати **
перед змінною, що є словником.
Дякуємо за ваш відгук!