Курс Python → Передача параметров в Python

Для передачи опциональных или именованных параметров из одной функции в другую в Python используются спецификаторы * и **. Спецификатор * в списке аргументов функции позволяет получить все переданные позиционные аргументы в виде кортежа, а ** возвращает все переданные именованные параметры в виде словаря. Например:


def func1(*args, **kwargs):
    print(args)  # позиционные аргументы
    print(kwargs)  # именованные параметры

func1(1, 2, 3, a=4, b=5)

В данном примере функция func1 принимает произвольное количество позиционных аргументов и именованных параметров. При вызове функции передаются аргументы 1, 2, 3 и параметры a=4, b=5. Результат выполнения функции будет:


(1, 2, 3)
{'a': 4, 'b': 5}

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


def func2(*args, **kwargs):
    print("Received args:", args)
    print("Received kwargs:", kwargs)

def func1(*args, **kwargs):
    func2(*args, **kwargs)

func1(1, 2, 3, a=4, b=5)

В этом примере функция func1 принимает аргументы и параметры, а затем передает их в функцию func2, используя спецификаторы * и **. Результат выполнения функции func2 будет аналогичным предыдущему примеру.

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

Автор урока

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

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

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

  1. Разделение списка на гнппы
  2. Декоратор защиты анонимных пользователей
  3. Функции классификации комплексных чисел
  4. Создание .exe файла с pyinstaller
  5. Аннотации типов в Python
  6. Изменение списка срезами
  7. Структурирование именованных констант
  8. Конкатенация списков в Python
  9. Форматирование строк в Python
  10. Деление в Python
  11. Игра «Виселица» на Python
  12. Добавление Progressbar в Python
  13. Методы работы со списками
  14. Поиск кода
  15. Управление контекстом выполнения
  16. Сортировка элементов в Python
  17. Преобразование генераторов в циклы
  18. Декораторы в Python
  19. Методы split() и join() — Python строк.
  20. Работа с комбинациями в Python.
  21. Атрибуты объекта в Python
  22. Функция map() в Python
  23. Профилирование кода
  24. Defaultdict в Python
  25. Python 3.12: Псевдонимы типов
  26. Моржовый оператор в Python 3.8
  27. Python defaultdict добавление ключа
  28. Удаление файлов с shutil.os.remove()
  29. Получение текущей даты и времени
  30. Передача параметров в Python
  31. Функции с дополнением
  32. Анализ кода — Python
  33. Работа со стеком в Python
  34. Работа с YAML в Python
  35. Перетасовка списков в Python
  36. Создание новых списков в Python
  37. Активация Matplotlib в Jupyter
  38. Возврат нескольких значений
  39. Создание даты из строки ISO
  40. Метод split() в Python
  41. Преобразование документов в PDF с помощью Spire.Office
  42. Получение срезов итераторов
  43. Компиляция регулярных выражений
  44. Работа с многоуровневыми словарями в Python
  45. Метод __iand__ для пользовательских классов
  46. Генерация UUID в Python
  47. Установка и использование Logzero

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