计算1到100的和,使用for循环和递归,用上述方法来时间计算程序执行时间

1到100使用for和递归方法,然后用测试for循环的运行时间

如以下代码还可以测试递归时间的计算

def run_time(func):#这是一个用于计算程序执行时间的装饰器
def new_func(*args,**kwargs):
start_time = daterime.now()
pring('开始时间为:%s'%start_time)
func(n) #如果需要参数N就需要提前定义,不需要
可以直接去掉
end_time = datetime.now()
pring('结束时间为:%s'%end_time)
total_time = end_time - start_time
pring('总共花费时间为:%s'%total_time)
return new_func
注意缩进

没看懂,1到100使用for和递归方法,这是要计算啥?还是说随便写个函数


from datetime import datetime
import time

def run_time(func):#这是一个用于计算程序执行时间的装饰器
    def new_func(*args,**kwargs):
        start_time = datetime.now()
        print('开始时间为:%s'%start_time)
        func(*args, **kwargs) #如果需要参数N就需要提前定义,不需要可以直接去掉
        end_time = datetime.now()
        print('结束时间为:%s'%end_time)
        total_time = end_time - start_time
        print('总共花费时间为:%s'%total_time)
    return new_func

@run_time
def func1(n):
    sm=0
    for i in range(1,n+1):
        sm+=i
    return sm

@run_time
def func2(n):
    def dg(n):
        if n==1:
            return 1
        else:
            return n+dg(n-1)
    return dg(100)


print(func1(100)) ##循环
print(func2(100)) ##递归