美文网首页
python 时间装饰器

python 时间装饰器

作者: 隐墨留白 | 来源:发表于2018-11-23 14:59 被阅读0次

1.实现一个打印当前时间的装饰器

import time
def func_time(func):
    def inner(*args,**kw):
        now_time = time.localtime()
        print('函数开始运行的时间为:',time.strftime('%Y:%m:%d %H:%M:%S',now_time))
        func(*args,**kw)
    return inner

@func_time
def sum(x,y):
    print(x,y)
sum(4,7)

#运行结果
函数开始运行的时间为:2018:11:23 14:36:59
11

2.函数运行总时间的装饰器

import time

def func_time(func):
    def inner(*args,**kw):
        start_time = time.time()
        func(*args,**kw)
        end_time = time.time()
        print('函数运行时间为:',end_time-start_time,'s')
    return inner

@func_time
def sum(x):
    for i in range(1,x+1):
        for j in range(1,i+1):
            print(j,'*', i, '=',i*j,end='   ')
        print()
sum(9)

1 * 1 = 1   
1 * 2 = 2   2 * 2 = 4   
1 * 3 = 3   2 * 3 = 6   3 * 3 = 9   
1 * 4 = 4   2 * 4 = 8   3 * 4 = 12   4 * 4 = 16   
1 * 5 = 5   2 * 5 = 10   3 * 5 = 15   4 * 5 = 20   5 * 5 = 25   
1 * 6 = 6   2 * 6 = 12   3 * 6 = 18   4 * 6 = 24   5 * 6 = 30   6 * 6 = 36   
1 * 7 = 7   2 * 7 = 14   3 * 7 = 21   4 * 7 = 28   5 * 7 = 35   6 * 7 = 42   7 * 7 = 49   
1 * 8 = 8   2 * 8 = 16   3 * 8 = 24   4 * 8 = 32   5 * 8 = 40   6 * 8 = 48   7 * 8 = 56   8 * 8 = 64   
1 * 9 = 9   2 * 9 = 18   3 * 9 = 27   4 * 9 = 36   5 * 9 = 45   6 * 9 = 54   7 * 9 = 63   8 * 9 = 72   9 * 9 = 81   
函数运行时间为: 0.0009999275207519531 s

相关文章

网友评论

      本文标题:python 时间装饰器

      本文链接:https://www.haomeiwen.com/subject/qyejqqtx.html