Курс 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 3.8
  2. Множественные конструкторы в Python
  3. Метод rsub в Python: расширение функциональности вычитания
  4. Список импортированных модулей в Python
  5. Функции с дополнением
  6. Numpy: разбиение массивов
  7. Работа с Path в Python
  8. Объединение словарей в Python
  9. Копирование в Python
  10. Использование super() в Python
  11. Декораторы с аргументами
  12. Хэш-функции в Python
  13. Работа с изменяемыми списками
  14. Метод сравнения объектов в Python
  15. TypedDict для kwargs в Python 3.12
  16. Роль запятой в Python
  17. Проверка типа объекта в Python
  18. Генераторы списков в Python
  19. Запуск внешних программ с subprocess
  20. Структура данных deque в Python
  21. Выключение компьютера с помощью Python
  22. Получение имени функции с помощью inspect
  23. Работа с zip()
  24. Метод count в Python: почему count(», ») возвращает 4?
  25. Magic Commands — улучшение работы с Python
  26. Метод setdefault() в Python
  27. Потоковый ввод в Python
  28. Итераторы в Python
  29. Транспонирование 2D-массива с помощью zip
  30. Работа с комплексными числами
  31. Нахождение отличий в списках
  32. Работа с комбинациями в Python.
  33. Настройка вывода в Numpy
  34. Отрицательные индексы списков
  35. Получение текущей директории
  36. Возврат нескольких значений
  37. Создание списка дат
  38. Обработка аргументов Python
  39. Создание веб-приложения с Flask
  40. Удаление специальных символов
  41. Преобразование текста в речь с Python
  42. Применение команды break
  43. Проверка файла .py на синтаксис.
  44. Поиск самого частого элемента
  45. Метод pos в Python
  46. Вычисление натурального логарифма в NumPy
  47. Декоратор Ajax required
  48. Howdoi — получение ответов из терминала

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