Курс 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. Введение в Python
  2. Лямбда-функции в цикле
  3. Работа с файлами в Python
  4. Оптимизация интернирования строк
  5. Объединение Python и Shell
  6. Бесконечные списки в Python
  7. Использование двоеточия в Python
  8. Извлечение аудио из видео
  9. Счетчик в Python: most_common()
  10. Непрерывная проверка в Python
  11. Функция enumerate() — Python
  12. Группировка элементов в словарь
  13. Работа с IP-адресами в Python
  14. Разделение строк в Python
  15. Измерение времени выполнения кода
  16. Работа с пакетами
  17. Область видимости переменных
  18. Регистрация на TenChat
  19. Работа с модулем random
  20. Удаление символа из строки
  21. Обработка аргументов Python
  22. Разделение строки на пары ключ-значение.
  23. Переворот строки с помощью срезов
  24. Тестирование с unittest
  25. Получение частей дроби
  26. Декораторы в Python
  27. Циклы for в Python
  28. Определение индекса элемента списка
  29. Модуль pprint
  30. Функции в одну строку
  31. Установка Git и AWS CLI
  32. Управление ресурсами с контекстными менеджерами
  33. Обмен значений переменных в Python
  34. CSV строка разделение в Python
  35. Вакансии в Nebius
  36. Обработка ошибки IndexError
  37. enumerate() в Python для работы с индексами
  38. Объединение списков в Python
  39. Создание даты из строки ISO
  40. Копирование объектов в Python
  41. Просмотр внешних файлов в %pycat
  42. Транспонирование матрицы в Python
  43. Генерация случайных данных в NumPy
  44. Перетасовка списков в Python
  45. Удаление URL-адресов в Python

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