Курс 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. Генерация случайных чисел в Python
  3. Проверка существования переменной с оператором :=
  4. Метод remove() для удаления элемента из списка
  5. Моржовый оператор в Python 3.8
  6. CLI-инструмент howdoi
  7. Метод enumerate() в Python
  8. Импорт модулей в Python 3.12
  9. Типы возвращаемых значений в Python
  10. Декоратор защиты анонимных пользователей
  11. Хранение переменных в Python.
  12. Сериализация объектов в Python
  13. Курс Data Scientist в медицине
  14. Работа с модулем random
  15. Определение относительного пути
  16. Numpy: разбиение массивов
  17. Модуль os в Python: работа с файлами
  18. Использование обратной косой черты в f-строках
  19. Функция enumerate() в Python
  20. Оператор обр. импликации
  21. Поиск уникальных и повторяющихся элементов
  22. Печать месячного календаря
  23. Проверка строки на палиндром
  24. Управление виртуальными окружениями в Python
  25. Декораторы в Python
  26. Конвертация текстовых чисел с помощью Numerizer
  27. Работа с очередями в Python
  28. kwargs в Python
  29. Генераторы списков
  30. Проверка запуска скрипта или импорта модуля
  31. Разделение строк методом split()
  32. Цепные операции в Python
  33. Создание вложенных циклов for
  34. Работа с очередями в Python
  35. Метод difference_update() — разность множеств
  36. Проверка подстроки в строке с помощью in
  37. Отправка HTTP-запросов с User-Agent
  38. Pretty-printing JSON в Python
  39. Генерация UUID в Python
  40. Работа с датами в Python
  41. Философия Python
  42. Функция enumerate в Python
  43. Тип CodeType в Python.
  44. Библиотека sh: использование команд bash в Python
  45. Измерение времени выполнения кода с помощью time
  46. Нарезка списков в Python

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