1. Главная
  2. Библиотека
  3. Программирование
  4. Обратите внимание: после добавления декоратора атрибуты...
Разбор задачи

Обратите внимание: после добавления декоратора атрибуты функции (название, описание, модуль) должны остаться теми же, которые они были изначально, а то иначе придет злой начальник и надает по башке. Напишите декоратор whereami, который выведет перед

  • Предмет: Программирование
  • Автор: Кэмп
  • #Основы алгоритмизации и программирования
  • #Языки программирования (C++, Java, Python и др.)
Обратите внимание: после добавления декоратора атрибуты функции (название, описание, модуль) должны остаться теми же, которые они были изначально, а то иначе придет злой начальник и надает по башке. Напишите декоратор whereami, который выведет перед

Условие:

Обратите внимание: после добавления декоратора атрибуты функции (название, описание, модуль) должны остаться теми же, которые они были изначально, а то иначе придет злой начальник и надает по башке.

Напишите декоратор where_am_i, который выведет перед вызовом функции все необходимые параметры.

Формат ввода
Ваш код должен иметь такой вид:
\nimport sys

# ваша реализация декоратора where_am_i
\nexec(sys.stdin.read()

Решение:

Шаг 1. Импортируем модуль functools, чтобы использовать функцию wraps для сохранения атрибутов исходной функции.

Шаг 2. Определяем декоратор where_am_i, который принимает функцию в качестве аргумента. Внутри декоратора создадим обёртку (wrapper), которая принимает любые позиционные и именованные аргументы.

Шаг 3. Внутри обёртки выводим название функции (func.name) и значения аргументов. После этого вызываем исходную функцию с переданными аргументами и возвращаем результат.

Шаг 4....

Внутри — полный разбор, аргументация, алгоритм решения, частые ошибки и как отвечать на каверзные вопросы препода, если спросит

Попробуй решить по шагам

Попробуй один шаг и продолжи в режиме обучения или посмотри готовое решение

Для чего в декораторе `where_am_i` используется `functools.wraps`?

Что нужно знать по теме:

Что нужно знать по теме

Алгоритм решения

Топ 3 ошибок

Что спросит препод

Выбери предмет