Курс 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. Генераторы в Python
  2. Проверка типа объекта в Python
  3. Аргумент по умолчанию
  4. Делегирование в Python
  5. Работа с URL-адресами в Python
  6. Поиск частого элемента
  7. Форматирование даты с strftime()
  8. Создание и удаление объектов
  9. Использование *args
  10. Перевод текста с Python Translator
  11. Работа с SQLite в Python
  12. Многострочные комментарии в Python
  13. Обратное распространение ошибки
  14. Работа с Requests для HTTP-запросов
  15. Генерация тестовых данных с factory_boy
  16. Освоение Python
  17. Работа с асинхронными задачами в Python
  18. Подписка на SelectelNews в Twitter
  19. Метод __getitem__ в Python
  20. Метод сравнения объектов в Python
  21. Создание пользовательской коллекции в Python
  22. Переопределение метода __pow__
  23. Непрерывная проверка в Python
  24. Метод rename() для переименования файлов и каталогов
  25. Структуры данных в Python
  26. Преобразование документов в PDF с помощью Spire.Office
  27. Сохранение Unicode в JSON
  28. Импорт в Python: список all
  29. Модуль pprint
  30. Bootle — простой веб-фреймворк
  31. Использование модуля math
  32. Глубокое копирование объектов
  33. Удаление элементов во время итерации
  34. Переопределение метода __floordiv__
  35. Виртуальные среды в Python
  36. Поиск индексов подстроки
  37. Форматирование строк в Python
  38. Многопоточность в Python
  39. Управление браузером с Selenium
  40. Множественные конструкторы в Python
  41. Ветвление выражения в Python
  42. Функция __init__ в Python
  43. Метод rsub для пользовательских чисел

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