作为一名运维人员来说,在早期服务器数量较少时,主要是实现功能为主,大部分时间你是不需要关心脚本运行时间的,但随着你管理的服务器越来越多,那最早版本的脚本运行时间就是瓶颈,有的甚至慢到你想砸电脑的地步,你以为它死了,其实它还活着,总在不经意间给你一个特别的惊喜,如果出现这种情况,基本就要优化代码了,同时如果你想统计优化完时间到底缩短了多少,也会有很多方法,但我们今天主要来看如何用python实现时间统计,先上代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
import time import random class ExecutionTime: def __init__(self): self.start_time = time.time() def duration(self): return time.time() - self.start_time timer = ExecutionTime() my_list = [random.randint(1, 1000) for num in range(1, 100) if num % 2 == 0] print('Finished in {0} seconds.'.format(timer.duration())) |
脚本非常简单,先定义一个类,然后定义构造器方法(__init__),就是获取了当前的时间time.time(), duration(self)方法返回运行完后当前时间和初始化时的实际间隔,然后就是测试的代码了,实例化对象,再往下是一个列表生成器,有时长的列表生成器不容易一下看明白,我们来分开说,random.randint(1, 1000)返回1-1000的随意整数,for循环控制循环次数,if 来判断是否可以被2整除,即余数是0,总体就是循环99次,每次取一个整数,如果这个整数求余等于2,那么这个数就加入到my_list列表中,最后脚本返回运行时间,希望这个脚本对大家有所帮助。