Курс Python → Аргументы *args и **kwargs

Аргументы *args и **kwargs в Python предоставляют возможность функциям работать с переменным числом аргументов. *args используется для передачи неопределенного количества позиционных аргументов, тогда как **kwargs позволяет передавать произвольное количество аргументов в виде пар «ключ-значение». Это сильно упрощает написание функций, которые могут принимать различное количество аргументов.

Пример использования *args:


def my_function(*args):
    for arg in args:
        print(arg)

my_function(1, 2, 3, 4)

В данном примере функция my_function принимает произвольное количество позиционных аргументов и выводит их на экран. При вызове функции с аргументами (1, 2, 3, 4) будут выведены числа 1, 2, 3, 4.

Пример использования **kwargs:


def my_function(**kwargs):
    for key, value in kwargs.items():
        print(f"{key}: {value}")

my_function(name="Alice", age=30, city="New York")

В этом примере функция my_function принимает произвольное количество аргументов в формате ключ-значение и выводит их на экран. При вызове функции с аргументами (name=»Alice», age=30, city=»New York») будут выведены данные о человеке: имя, возраст, город.

Использование *args и **kwargs позволяет создавать более гибкие и универсальные функции, которые могут принимать различное количество аргументов и работать с ними эффективно. Это особенно полезно при написании библиотек или фреймворков, где требуется обработка разнообразных данных.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Библиотека Rich: форматирование текста
  2. Объединение словарей в Python
  3. Измерение времени выполнения кода
  4. Регулярные выражения в Python
  5. Добавление Progressbar в Python
  6. Строки в Python: апострофы и кавычки
  7. Применение функции к элементам списка
  8. Применение функций в Python
  9. Создание вложенного генератора
  10. Использование html-скриптов в Jupyter Notebook
  11. Уникальность ключей в словаре
  12. Избегайте пустого списка
  13. Обмен значений переменных в Python
  14. Синтаксис переменных цикла в Python
  15. Генераторные функции в Python
  16. Метод rename() для переименования файлов и каталогов
  17. Декоратор Ajax required
  18. Генерация случайных чисел в Python
  19. Работа с модулем cmath
  20. Удаление знаков препинания в Python
  21. Python и Монти Пайтон
  22. Преобразование вложенного списка
  23. Переопределение метода __eq__
  24. Метод join() для объединения элементов
  25. Переопределение метода __floordiv__
  26. Преобразование регистра строк
  27. Метод rmatmul для пользовательских матриц
  28. Многострочные комментарии в Python
  29. Операции с числами в Python
  30. Игра «Виселица» на Python
  31. Оптимизация памяти с __slots__
  32. Построение графиков в Matplotlib
  33. Конкатенация строк в Python
  34. Блок else в обработке исключений
  35. Создание виртуальной среды
  36. Любовь к Python
  37. Передача неизвестных аргументов в Python.
  38. Работа с модулем Calendar
  39. Функции-генераторы в Python
  40. Создание коллекций из выражения-генератора
  41. Фильтрация списков с itertools
  42. Метод enumerate() в Python
  43. Передача аргументов через **arguments
  44. Оператор «not» в Python
  45. Класс-оболочка для словарей

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