Курс 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. Закрытие файла в Python
  2. Декоратор Property в Python
  3. Работа со словарями в Python
  4. Получение текущей даты в Python
  5. Таймер обратного отсчета
  6. Работа с кортежами
  7. Возвращение нескольких значений через кортеж или класс
  8. Отображение графиков в Jupyter с Matplotlib
  9. Оператор «is not» в Python
  10. Метод __irshift__ для побитового сдвига вправо
  11. Метод rxor для операции побитового исключающего «или»
  12. Дефолтные параметры в Python
  13. PrettyTable: создание таблицы
  14. Использование функции enumerate()
  15. Декоратор total_ordering для сравнения объектов
  16. Работа с JSON в Python
  17. Активация Matplotlib в Jupyter
  18. Проверка элементов списка условием
  19. Повторение и перенос строки
  20. Генерация QR-кодов с библиотекой qrcode
  21. Слияние словарей в Python 3.9
  22. Enum в Python
  23. Динамические маршруты во Flask
  24. Копирование объектов в Python
  25. Извлечение аудио из видео
  26. Конкатенация строк с join() в Python
  27. Выражения-генераторы в Python
  28. Правила именования переменных
  29. Измерение времени выполнения кода
  30. Работа с NumPy массивами
  31. Модуль antigravity: генерация координат
  32. Модуль subprocess: запуск внешних команд
  33. Импорт модулей и пакетов в Python
  34. Вычисление логарифмов в Python
  35. Оператор is в Python
  36. Настройка вывода NumPy
  37. Декораторы в Python
  38. Подсказки типов в Python
  39. Лямбда-функции в defaultdict
  40. Обучение модели с указанием эпох
  41. Инверсия списка и строки в Python
  42. Структура данных словарь в Python
  43. Сортировка в Python
  44. Метод eq для сравнения объектов
  45. Разделение строки с помощью split()
  46. Разделение строки на подстроки в Python

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