Python3知识累积ing
发布日期:2021-05-06 15:52:12 浏览次数:30 分类:精选文章

本文共 1124 字,大约阅读时间需要 3 分钟。

1. timeit的用法

python3中的timeit模块可以用来测试小段代码的运行时间,其中有两个函数:timeit和repeat,

格式:

def timeit(stmt="pass",  setup="pass",  timer=defalt_timer,  number=default_number,  globals=None);

"""Convenience function to create Timer object and call timeit method."""

return Timer(stmt, setup, timer, globals).timeit(number)

def repeat(stmt="pass", setup="pass", timer=default_timer, repeat=default_repeat,  number=default_number, globals=None):

"""Convenience function to create Timer object and call repeat method."""

return Timer(stmt, setup, timer, globals).repeat(repeat,  number)

在上面的代码中可见,无论是timeit还是repeat都是先生成Timer对象,然后调用了Timer对象的timeit或者repeat函数。

即使用timeit模块时,可以直接使用timeit.timeit()、timeit.repeat(),还可以先用timeit.Timer()来生成一个Timer对象,然后再用Timer对象调用timeit()和repeat()函数。

参数释义:

stmt: 用于传入要测试时间的代码,可以直接接受字符串的表达式,也可以接受单个变量,也可以接受函数。传入函数时要把函数声明在当前文件中,然后在

         stmt='func()'执行函数,然后使用setup=‘from __main__ imprt func’

setup:传入stmt的运行环境,比如stmt中使用到的参数、变量,要导入的模块等。可以写一行语句,也可以写多行语句,写多行语句时要用分号;隔开语句。

number:要测试的代码的运行次数,默认100000次,对于耗时的代码,运行太多次会比较慢

repeat:指测试要重复几次,每次的结果构成列表返回,默认3次。

代码示例:

way1: 直接使用timeit.timeit()、timeit.repeat():

         

way2: 先生成Timer,再调用timeit()、repeat():

         

 

 

 

 

 

 

 

 

 

上一篇:VC6.0如何创建新工程
下一篇:Mac系统卸载python3以及安装Anaconda3

发表评论

最新留言

不错!
[***.144.177.141]2025年04月04日 19时29分56秒