Курс 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"
- Инвертирование словаря
- Оператор in для Python
- Анонимные функции в Python
- Форматирование строк в Python.
- Печать комбинаций в Python с Itertools
- Создание словаря и множества
- Модуль pprint
- Создание коллекций из генератора
- Работа с collections.Counter
- Безопасные SQL-запросы в Python 3.11
- Метод lt для сортировки объектов
- Константы в модуле cmath
- Форматирование данных с pprint
- Работа с итераторами через срезы
- Работа с путями в Python
- Работа с кортежами
- Создание словарей в Python
- Извлечение статей с newspaper3k
- История Python
- Аннотации типов в Python
- Форматирование строк в Python
- Измерение времени выполнения кода
- Вывод с переменной через запятую
- Улучшение читаемости кода в Python
- Извлечение новостей с помощью newspaper3k
- Создание списка через цикл
- Метод is_absolute() для PurePath
- Измерение времени выполнения кода с помощью time
- Обмен данными с asyncio.Queue
- Numpy: разбиение массивов
- Python Enumerate
- Получение ID процесса
- F-строки в Python 3.8
- Улучшенные подсказки для импорта в Python 3.12
- Скрытие вывода данных
- Генераторы в Python
- Округление чисел с помощью round
- Метод splitlines() для разделения строк
- Инверсия списка и строки в Python
- Генераторы в Python
- Множественное наследование в Python
- Область видимости переменных















