Декораторы
Задание: Не те градусы
Воспользовавшись API от NOAA мы создали несколько функций, возвращающих ожидаемую на следующий день температуру воды возле затонувших кораблей в градусах Фаренгейта. Напишите декоратор, переводящий возвращаемые этими функциями целые числа из шкалы Фаренгейта в шкалу Цельсия с точностью до второго знака после запятой. Ни одна из функций не принимает аргументы.
Формула пересчёта: (X °F − 32) × 5/9 °C
Подсказка: округлять можно с помощью функции round():
v = 0.111111111111
round(v, 4) # 0.1111
round(v) # 0
Задание: Декоратор измерения производительности.
В данном задании необходимо написать декоратор, который будет измерять время выполнения функции.
- Реализуйте декоратор @measure_performance.
- С помощью функции time(), модуля Python time, определить время выполнения декорируемой функции.
- Время выполнения функции (в секундах) должно выводиться в консоль.
- Следует учесть, что функция, которую декорируют может иметь различное количество позиционных и именных аргументов.
*time.time() - возвращает количество секунд, прошедших с определенной эпохи, в виде числа с плавающей запятой.