среда, 11 мая 2016 г.

"Распаковочные" операторы Python

*args - argument unpacking
**kwargs - keyword argument unpacking

Первый вариант распаковывает iterable в аргументы определенном порядке функции

args = (1, 2, 3)  # usually a tuple, always an iterable*

f(*args) → f(1, 2, 3)

А вот распаковывается mapping в аргументы по ключевым словам
kwargs = {"a": 1, "b": 2, "c": 3}  # usually a dict, always a mapping*

f(**kwargs) -> f(1, 2, 3) # if you have `def f(a=0, b=0, c=0)`

Комментариев нет:

Отправить комментарий