Курс 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. Разработка Telegram-ботов
  3. Функции map, filter, reduce
  4. Генераторы в Python
  5. Парсинг веб-страниц с Beautiful Soup
  6. Работа с изображениями PIL
  7. Поиск индекса элемента в списке
  8. Отрицательные индексы списков в Python
  9. Работа с рекламными данными в Pandas
  10. Сравнение объектов в Python
  11. Декораторы в Python
  12. Enum в Python
  13. Работа с исключениями в Python
  14. Создание генераторов
  15. Разность множеств
  16. Расширение операции побитового «и» в Python
  17. Управление доступом к модулю
  18. Бесконечная проверка в Python
  19. Измерение времени выполнения кода
  20. Оператор is в Python
  21. split() — разделение строки
  22. Поиск шаблона в строке
  23. Методы HTTP запросов в Flask
  24. Печать комбинаций в Python с Itertools
  25. Работа с Requests для HTTP-запросов
  26. Работа с множествами в Python
  27. Переворот списка в Python
  28. Улучшение читаемости кода в Python
  29. Извлечение аудио из видео
  30. Проверка элементов списка условием
  31. Создание словаря с значением по умолчанию
  32. Операции с комплексными числами
  33. Настройка вывода NumPy
  34. Создание итератора
  35. Поиск подстроки в строке
  36. Руководство по Pymorphy2
  37. Методы обработки строк в Python
  38. Замена атрибута в именованном кортеже
  39. Область видимости переменных
  40. Python groupby() из itertools: работа с повторяющимися элементами
  41. Преобразование в float
  42. Генераторы списков в Python
  43. Повторение элементов в Python
  44. Методы и функции в Python
  45. Функция enumerate в Python
  46. Деление в Python
  47. Применение функции к каждому элементу списка

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