Курс Python → Гибкие функции Python

Параметры функции *args и **kwargs являются важным инструментом в Python, который позволяет создавать функции с переменным числом аргументов. Как правило, *args используется для передачи неименованных аргументов в виде кортежа, а **kwargs для передачи именованных аргументов в виде словаря.

Например, если у нас есть функция, которая принимает один обязательный аргумент value, а все остальные аргументы не обязательны, мы можем использовать *args для упаковки неименованных аргументов и **kwargs для упаковки именованных аргументов. Таким образом, мы можем передать любое количество аргументов в нашу функцию.

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

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


def sum_values(*args):
    total = 0
    for num in args:
        total += num
    return total

print(sum_values(1, 2, 3, 4))  # Выведет 10
print(sum_values(5, 10, 15))    # Выведет 30

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

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

Автор урока

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

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

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

  1. Протокол управления контекстом
  2. Установка и обучение ChatterBot
  3. Официальный канал Python в Telegram
  4. Роль ключевого слова self
  5. Оптимизация памяти с slots
  6. Введение в Python
  7. Основы Python
  8. F-строки в Python 3.8
  9. Печать в одной строке
  10. Визуализация пропусков данных
  11. Запуск внешнего кода в Jupyter
  12. Создание вкладок с TKinter
  13. Генераторы в Python
  14. Дизассемблирование Python кода
  15. Ввод нескольких значений
  16. Логирование с Logzero
  17. Управление памятью в numpy.
  18. Взаимодействие с sys
  19. Создание веб-приложения с Flask
  20. Операции со строками в Python
  21. Конкатенация строк в Python
  22. Работа с файлами и директориями в Python.
  23. Непрерывная проверка в Python
  24. Получение текущего времени в Python
  25. Создание новых списков в Python
  26. Создание итератора
  27. Контекстный менеджер в Python
  28. Декоратор защиты анонимных пользователей
  29. Получение обратного списка чисел
  30. Подсказки типов в Python
  31. OrderedDict — упорядоченный словарь
  32. Удаление дубликатов с помощью множеств
  33. Модуль inspect: получение информации о объектах
  34. Измерение времени выполнения кода
  35. Метод radd для пользовательских чисел
  36. Замена текста в Python
  37. Счетчик в Python: most_common()
  38. Работа с файлами в Python
  39. Переопределение метода xor в Python
  40. Справка по импортированным модулям
  41. Фильтры Pillow: NEAREST, BILINEAR, BICUBIC
  42. Метод __int__ в Python
  43. Обновление множества в Python
  44. Библиотека Rich: форматирование текста

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