Форум сайта python.su
0
Доброго времени суток!
Есть код:
import time def timer(f): def tmp(*args,**kwargs): t=time.time() res=f(*args,**kwargs) print ('Время выполнения функции: %f' % (time.time()-t)) return res return tmp @timer def func(x): return x**x print(func(20000))
Офлайн
568
1. func=timer(func)# из определения декоратора
2. timer(func) возвращает tmp, следовательно
3. func=tmp
4. func(20000) === tmp(20000)
Офлайн