Курс 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. Форматирование даты с strftime()
  2. Сортировка и обратный порядок
  3. Метод hash в Python
  4. Путь к интерпретатору Python
  5. Бесконечные списки в Python
  6. Работа с каталогами в Python
  7. Python 3.12: Псевдонимы типов
  8. Умножение строк и списков
  9. Объединение словарей в Python
  10. Генерация ключей RSA
  11. Распаковка аргументов в Python
  12. Оператор деления для класса Rational
  13. Анонимные функции в Python
  14. Переворот списка в Python
  15. Форматирование объектов с модулем pprint
  16. Конвертация текстовых чисел с помощью Numerizer
  17. Регистрация на TenChat
  18. Работа с Path в Python
  19. Импорт модулей в Python 3.12
  20. Декоратор защиты анонимных пользователей
  21. Профилирование с cProfile
  22. Фильтры Pillow: NEAREST, BILINEAR, BICUBIC
  23. Комментарии в Python
  24. Методы обработки строк в Python
  25. Solidity для DeFi Ethereum
  26. Итераторы в Python
  27. Удаление символа из строки
  28. Преобразование многоуровневого словаря
  29. Функция findall() для поиска вхождений строки
  30. Профилирование кода
  31. Генерация случайных чисел Python
  32. Дефолтные параметры в Python
  33. Очистка данных в Python
  34. Создание списков в Python
  35. CLI-инструмент howdoi
  36. Освоение Python
  37. Модуль future Python
  38. Параллельные вычисления в Python
  39. Инверсия списка и строки
  40. Простой калькулятор Python
  41. Замена текста в Python
  42. Функция divmod() в Python
  43. Метаклассы в Python
  44. Кортеж в Python: создание и использование

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