Курс Python → Работа с *args и **kwargs в Python

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

Переменные args и kwargs — это всего лишь соглашения в Python. Главное здесь — это звездочки, которые обозначают сборку аргументов в коллекцию. Одна звездочка перед переменной args позволяет собрать все неименованные аргументы в кортеж, в то время как две звездочки перед переменной kwargs собирают все именованные аргументы в словарь.


def example_function(*args, **kwargs):
    for arg in args:
        print(arg)
    for key, value in kwargs.items():
        print(f"{key}: {value}")
        
example_function(1, 2, 3, name='Alice', age=30)

В приведенном выше примере функции example_function мы используем *args для работы с неименованными аргументами и **kwargs для работы с именованными аргументами. При вызове функции мы передаем числовые значения в качестве неименованных аргументов и пары ключ-значение для именованных аргументов. Функция выводит все переданные аргументы на экран.

Использование *args и **kwargs делает код более гибким и удобным для работы с различными входными данными. Они позволяют упростить написание функций, которые могут принимать переменное количество аргументов, что делает ваш код более масштабируемым и удобным в использовании.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Установка Python3.7 и PIP
  2. Python union() функция — объединение множеств
  3. Разделение строки в Python
  4. Удаление дубликатов с помощью множеств
  5. Измерение времени выполнения кода
  6. Функция reduce() в Python
  7. Метод setdefault() в Python
  8. Создание списков в Python
  9. Роль запятой в Python
  10. Функция enumerate() — Python
  11. Оператор «and» в Python
  12. Замена символов в Python
  13. Аннотации типов в Python
  14. Функция format() в Python
  15. Выражения-генераторы в Python
  16. Объединение словарей в Python
  17. Игра «Угадывание чисел»
  18. Анализ кода — Python
  19. Работа с Event() в threading
  20. Замена текста в Python
  21. Перевод двоичного кода в целое число
  22. Оператор += для объединения строк
  23. Искажение имен в Python
  24. Создание итерируемых объектов
  25. Ограничение итераций в Python
  26. Модуль itertools: комбинации и перестановки
  27. Сравнение строк в Python
  28. Выборка чисел
  29. Работа с итераторами в Python
  30. discard() — удаление элемента из множества
  31. Логирование в Python
  32. Декоратор Property в Python
  33. Функция enumerate() в Python
  34. Оптимизация памяти с slots
  35. Оператор del в Python
  36. Обход элементов в Python
  37. Функция map() и ленивая оценка
  38. Декораторы с @wraps
  39. Генерация чисел с range()
  40. Функция с *args.
  41. Подсчет элементов с помощью Counter

Marketello читают маркетологи из крутых компаний