Форум сайта python.su
Как реализовать конструкцию ниже?
Нужно через get_time_work передать функцию с какими-то значениями (свои для каждой фунции; пример test), чтобы она выполнилась внутри этой функции, отобразив время ее работы.
import time def get_time_work(func): start = time.time() func() end = time.time() dif = end - start print("Time_work = ", dif) def test(num, text): print(num, text) get_time_work(test)
Офлайн
Читай про декораторы.
Офлайн
Спасибо. Вот результат.
import time def get_time(fn): def wrapped(*args, **kwargs): start = time.time() fn(*args, **kwargs) end = time.time() dif = end - start print("Time_work = ", dif) return wrapped @get_time def test(num, text, test="test"): print(num, text, test) print (test(10,"text", test="result"))
Офлайн