Рубрики
Разработчикам

Функции, поддерживающие только именованн…

Функции, поддерживающие только именованные аргументы (kwargs)
#Python
Для того чтобы при использовании некоей функции сделать так, чтобы ей можно было бы передавать только именованные аргументы, можно поступить следующим образом:

def test(*, a, b):
 pass

test(«value for a», «value for b») # TypeError: test() takes 0 positional arguments…
test(a=»value», b=»value 2″) # А так — работает…

Это может быть полезно для того, чтобы улучшить понятность кода. Как видите, наша задача легко решается при помощи использования аргумента * перед списком именованных аргументов. Здесь, что вполне очевидно, можно использовать и позиционные аргументы — в том случае, если поместить их до аргумента *.