декораторы python list object is not callable
при наличии декоратора я получаю ошибку - list object is not callable , без него соответственно все работает. Почему при декорировании я получаю ошибку?
from datetime import datetime
def timeit(func):
def wrapper(*args, **kwargs):
start = datetime.now()
result = func(*args)
print(datetime.now() - start)
return result
return wrapper()
@timeit
def abc():
some_list = [i for i in range(100) if i % 2 == 0]
return some_list
print(abc())
Ответы (1 шт):
Автор решения: nomnoms12
→ Ссылка
Декоратор должен возвращать объект функции, а не её результат:
def timeit(func):
def wrapper(*args, **kwargs):
start = datetime.now()
result = func(*args)
print(datetime.now() - start)
return result
# return wrapper()
return wrapper