Использование *args и **kwargs в Python
С помощью *args и **kwargs функция может принимать любое число аргументов. Названия — по соглашению, важны звёздочки.
*args собирает неименованные аргументы в кортеж:
def func(*args):
for i in args:
print(i)
func(1, 2, 3) → args = (1, 2, 3)
**kwargs собирает именованные аргументы в словарь:
def func(**kwargs):
for k, v in kwargs.items():
print(f'{k} = {v}')
func(a=1, b=2) → kwargs = {'a': 1, 'b': 2}
Это делает функции гибче, особенно когда число параметров заранее неизвестно. Например, сумма любых чисел:
def sum(*args):
return sum(args)
#python #args #kwargs
pythonpedia
С помощью *args и **kwargs функция может принимать любое число аргументов. Названия — по соглашению, важны звёздочки.
*args собирает неименованные аргументы в кортеж:
def func(*args):
for i in args:
print(i)
func(1, 2, 3) → args = (1, 2, 3)
**kwargs собирает именованные аргументы в словарь:
def func(**kwargs):
for k, v in kwargs.items():
print(f'{k} = {v}')
func(a=1, b=2) → kwargs = {'a': 1, 'b': 2}
Это делает функции гибче, особенно когда число параметров заранее неизвестно. Например, сумма любых чисел:
def sum(*args):
return sum(args)
#python #args #kwargs
pythonpedia
🔥2