点样做网站,自助建站教程,中铁三局招聘是什么梗,wordpress微信带图链接我们知道为了提高代码的运行速度#xff0c;我们需要对书写的python代码进行性能测试#xff0c;而代码性能的高低的直接反馈是电脑运行代码所需要的时间。这里将介绍四种常用的测试代码运行速度的方法。
第一种#xff1a;使用time模块对代码的运行时间进行统计#xff0c…我们知道为了提高代码的运行速度我们需要对书写的python代码进行性能测试而代码性能的高低的直接反馈是电脑运行代码所需要的时间。这里将介绍四种常用的测试代码运行速度的方法。
第一种使用time模块对代码的运行时间进行统计代码如下
import time
class Debug:
def mainProgram(self):
start_time time.time()
for i in range(100):
print(i)
end_time time.time()
print(fthe running time is: {end_time - start_time} s)
if __name__ __main__:
main Debug()
main.mainProgram()
我们采用time 模块给所要测试的代码的前后加上时间戳一个记为start_time一个记作end_time最后代码块的运行时间为end_time-start_time单位为s(秒)。当然在python中还有许多的记录时间的模块这里不做过多讨论均类似于time模块实现思路上一致代码实现上大同小异。
第二种使用IPython的Built-in magic commands,%time,代码如下
class Debug:
def mainProgram(self):
%time for i in range(100): print(i)
main Debug()
main.mainProgram()Wall time: 1.99 ms这个类定义是可以去掉的并不会影响最终的结果%time 后面加上想要计算时间的代码然后编译器就会在运行后自动给出所测试代码的运行时间但是经过测试%time方法测出的时间并不准确时间波动范围非常大这个是很好理解的因为计算机每时每刻都在处理一些进程也就是说计算机的运行状态每时每刻都是不同的所以在不同的时刻测试同一段代码的运行时间也会得到不同的结果。
第三种用IPython的另一个Built-in magic commands,%timeit使用方法类似于%time代码如下
class Debug:
def mainProgram(self):
%timeit for i in range(100): print(i)
main Debug()
main.mainProgram()8.53 ms ± 452 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)我们可以看到得到的结果是每个循环8.53 ms±452 µs平均±标准偏差共运行7次每个循环100个%timeit相比于%time%timeit会多次执行测试代码并且会取它们运行时间的平均值并且还会计算出它们的标准差因此这种计算方法计算的结果相对于使用%time执行测试代码一次是比较准确的。
第四种导入timeit模块来计算代码块的执行时间
import timeit
class Debug:
def mainProgram(self):
result timeit.timeit(stmtfor i in range(100): print(i), number10)
print(result)
main Debug()
main.mainProgram()0.05363089999991644 s导入timeit模块后使用timeit.timeit()来测试想要测试的代码并且代码以string的形式进行输入并且需要设定number值设定测试的该段代码需要执行的次数最终我们得到0.05363089999991644单位是s(秒)与内置魔法方法%timeit方法不同的是虽然也是多次计算但是最终获取的时间是n次执行代码所需的总时间而不是执行一次的时间。
至此代码的运行速度测试方法的介绍暂时告一段落。以后可能会进一步更新更加全面的更多相关python 代码运行时间 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家