Курс 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. PrettyTable: создание таблицы
  2. Функция __init__ в Python
  3. Обновление и получение данных в SQLite
  4. Метод join() для объединения элементов в строку.
  5. Создание графиков в терминале
  6. Декораторы в Python
  7. Сортировка с параметром key
  8. Тип CodeType в Python.
  9. Запуск файлового сервера
  10. Создание и использование модулей в Python
  11. Фильтрация данных в Python.
  12. Объединение множеств в Python
  13. Метод count() для списков
  14. Команда %dhist — список посещенных каталогов
  15. Работа с типами данных в Python с помощью pydantic.
  16. Метод rxor для операции побитового исключающего «или»
  17. Работа с итераторами в Python
  18. Основы слова
  19. Получение пути к текущему скрипту с помощью os
  20. Использование type hints
  21. Метод ifloordiv для пользовательских классов
  22. Удаление ресурса в Python
  23. Работа с IP-адресами в Python
  24. Сортировка элементов в Python
  25. Работа с асинхронными задачами в Python
  26. Работа с каталогами в Python
  27. Декоратор Property в Python
  28. Роль ключевого слова self
  29. Профилирование данных с Pandas.
  30. Python defaultdict добавление ключа
  31. Контроль точности вывода чисел
  32. Переопределение метода __lshift__
  33. Оператор += для объединения строк
  34. Работа с CSV в Python
  35. Возврат нескольких значений из функции
  36. Solidity для DeFi Ethereum
  37. Создание списка через итерацию
  38. Работа с контекстными переменными
  39. Установка и использование howdoi
  40. Просмотр атрибутов и методов класса
  41. Принципы программирования
  42. Динамические маршруты во Flask
  43. Обработка ошибок в Python
  44. Настройка вывода в Numpy
  45. Выключение компьютера с помощью Python
  46. Python Ellipsis использование
  47. Управление виртуальными окружениями в Python

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