Я чрезвычайно новичок в python, и я только что столкнулся с декораторами. Я все еще смущен ими, но я учусь
Я пытался создать декоратор, который сообщит мне, сколько времени ушло на выполнение моей функции, но, очевидно, когда я пытаюсь использовать ее в функции, которая должна что-то возвращать, он просто возвращает «Нет»
Я видел только пару вопросов, говорящих об этой проблеме, но ни один из них на самом деле не помог
Вот мой код
import time
def time_it(func): # Here i make a simple decorator function that should time my decorated function
def wrapper(*args, **kwargs):
t1 = time.time()
func(*args)
t2 = time.time()
total = t2 - t1
print("The function '" + func.__name__ + "' took", str(total)[0:5], "seconds to complete")
return wrapper
@time_it
def square(nums): # I make a function that squares every number in a list
new_list = []
for n in nums:
new_list.append(n ** 2)
return new_list
lis = [f for f in range(200000)] # i make a list with a range of 200000
print(square(lis))
извините за любые грамматические ошибки, я не являюсь носителем английского языка