Разница между аргументами *args и **kwargs в Python

Разница между аргументами *args и **kwargs в Python

Руководство объясняющее разницу между аргументами функции *args и **kwargs в Python.

Введение

В любом языке программирования мы делаем функцию для выполнения какой-то задачи, чаще всего эта задача повторяется. Иногда мы не знаем, сколько аргументов получит функция и в этом случае мы используем *args.

Использование аргумента *args

В качестве аргумента мы передаем любое количество элементов и итерируем по ним

def testing_args(*args):
    for arg in args:
        print(arg)


testing_args(1, 2, 3, 4, 5)

Вывод программы

1
2
3
4
5

Использование аргумента **kwargs

*kwargs применяют так же, как и args, единственное отличие в том, что он используется для передачи аргументов с ключевым словом.

def testing_kwargs(**kwargs):
    for k, v in kwargs.items():
        print(f"{k} {v}")


testing_kwargs(num1=1, num2=2, num3=3, num4=4, num5=5)

Вывод команды

num1 1
num2 2
num3 3
num4 4
num5 5

Примечание: ключевые слова args и kwarg можно заменять на любые другие, это всего лишь общая договоренность.

Заключение

Сегодня мы рассмотрели какая существует разница между аргументами *args и **kwargs в Python в Python. Если у вас есть дополнительные вопросы, не стесняйтесь задавать их в комментариях.

Егор Егоров

Программирую на Python с 2017 года. Люблю создавать контент, который помогает людям понять сложные вещи. Не представляю жизнь без непрерывного цикла обучения, спорта и чувства юмора.

Ссылка на мой github есть в шапке. Залетай.

Оцените автора
Егоров Егор
Добавить комментарий

  1. Татьяна

    Познавательный канал, можно многому научится чего не знал. Спасибо, буду использовать эти знания?

    Ответить
    1. Егор Егоров автор

      🙂

      Ответить