Курс 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. Проблемы с dict в Python
  3. Удаление специальных символов
  4. Метод clear для коллекций
  5. Очистка входных данных
  6. Метод matmul для умножения матриц
  7. Иерархия классов в Python
  8. Подчеркивание в REPL
  9. Автоматизация скриптов на AWS Lightsail.
  10. Оптимизация гиперпараметров в Python
  11. Доступ к локальным переменным
  12. Безопасные SQL-запросы в Python 3.11
  13. Сортировка в Python
  14. Применение функции к списку
  15. Python groupby() из itertools: работа с повторяющимися элементами
  16. Работа с файлами в Python
  17. Создание .exe файла с pyinstaller
  18. Оформление кода по PEP 8
  19. Расширение операции побитового «и» в Python
  20. Оператор zip в Python
  21. JMESPath в Python
  22. Операция += для списков
  23. Быстрый поиск кода
  24. Работа с модулем cmath
  25. Функции map, filter, reduce
  26. Функциональное программирование в Python
  27. Получение имени функции с помощью inspect
  28. Colorama: окрашивание текста в Python
  29. Считывание бинарного файла в Python
  30. Переопределение метода __rshift__
  31. Списковое включение в Python
  32. Генерация UUID в Python
  33. Срезы в Python
  34. Объединение словарей в Python
  35. Генераторы и сеты в Python
  36. Обновление множества в Python
  37. Работа со строками в Python
  38. Разделение строки с помощью re.split()
  39. Передача аргументов через **arguments
  40. Создание спинбокса в tkinter
  41. Измерение времени выполнения кода
  42. Асинхронный код в Python
  43. Фильтрация списка чисел
  44. Генераторы в Python
  45. Модуль math: основные функции

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