Курс 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"
- Поиск индекса элемента
- Python: Splat-оператор и splatty-splat
- Преобразование чисел в слова
- Структура данных deque в Python
- Метод rmatmul для пользовательских матриц
- Тестирование с unittest
- Установка и использование TensorFlow
- Шаблоны и наследование в Flask
- Создание и удаление объектов
- Monkey Patching в Python
- Создание словарей и множеств в Python
- Исключение NotImplementedError
- Фильтрация входных данных в Python
- Генераторы в Python
- Протокол управления контекстом
- Метод setitem в Python
- Сумма элементов списка
- Работа с GitHub в Telegram
- Установка Python — Простое руководство
- Переопределение метода len
- IPython и Jupyter Notebook: руководство
- Частичное совпадение пользовательского ввода в Python 3.10
- Pretty-printing JSON в Python
- Создание функций высшего порядка
- Тайное преобразование типа ключа
- Проверка вхождения подстроки
- Упрощенный вывод данных в Python
- Функция print() — вывод информации
- Функции-генераторы в Python
- Генераторы по генератору
- Обработка ошибок в Python
- Метод gt в Python
- Хэш-функции и метод цепочек
- Роль запятой в Python
- Проверка версии Python
- List Comprehension Tutorial
- Избегание циклических зависимостей классов в Python
- Метод Self в Python
- Динамическая типизация в Python
- Обмен данными с asyncio.Queue
- Перегрузка операторов в Python
- Изменение IP-адреса в Python
- Модуль Operator в Python
- Оптимизация памяти с помощью __slots__















