Курс 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. Оптимизация памяти с помощью __slots__
  2. Безопасный доступ к значениям словаря
  3. Переворот строки
  4. Функция enumerate() в Python
  5. Преобразование строки в число
  6. Вложенные функции в Python
  7. Метод __float__ в Python
  8. Python и Юникод: работа с цифрами
  9. Упрощение работы с JSON-данными в Python
  10. Создание словаря с значением по умолчанию
  11. Создание вложенных циклов for
  12. Python itertools combinations() — группировка элементов
  13. Итераторы с потерямиZIP
  14. Установка и использование Virtualenv
  15. Регистрация на курсы SF Education
  16. Объединение словарей в Python
  17. Получение комбинаций в Python
  18. Работа с NumPy
  19. Метод count в Python: почему count(», ») возвращает 4?
  20. Нахождение хеша для бесконечности и NaN в Python
  21. Создание комплексных чисел
  22. Установка и использование Logzero
  23. Добавление элемента в список.
  24. Класс UserDict: дополнительная функциональность
  25. Вычисление разности множеств в Python
  26. Деление в Python
  27. Цикл for в Python
  28. Обрезка изображения с Pillow
  29. Работа с zip()
  30. UserString в Python
  31. Блок else в циклах.
  32. Подробная информация о %pinfo
  33. Список и кортеж в Python
  34. Измерение времени выполнения кода в Python
  35. Проверка ввода с помощью isdigit
  36. Метод eq для сравнения объектов
  37. Проверка на истинность объектов в Python
  38. Пропуск строк в файле с itertools
  39. Генераторы данных
  40. ROT13 Шифр Цезаря в Python
  41. Добавление вложенных списков
  42. Создание новых функций с помощью functools.partial
  43. Получение списка файлов в директории с использованием os

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