Python中的timeit方法

1. timeit.timeit()方法

python中的timeit()方法, 它用于获取代码的执行时间。该库将代码语句运行一百万次,并提供从集合中花费的最短时间。这是一种有用的方法,有助于检查代码的性能。

语法如下:

timeit.timeit(stmt, setup,timer, number)

参数解析:

  • stmt:这将采用您要测量其执行时间的代码。默认值为“pass”。
  • setup:这将包含需要在stmt之前执行的设置详细信息。默认值为“ pass”。
  • timer:它将具有计时器值,timeit()已经设置了默认值,我们可以忽略它。
  • number:stmt将按照此处给出的编号执行。默认值为1000000。

要使用timeit(),我们需要导入模块,如下所示:

import timeit

以下是timeit()函数的一个简单示例

import timeit

print(timeit.timeit('output = 10*5'))

在python代码中计时多行

我们可以使用分号或通过将包含在代码中的代码保存为带三引号的字符串来在timeit.timeit()中执行两行代码。

示例1:使用分号

import timeit

print("The time taken is",timeit.timeit(stmt='a=10;b=10;sum=a+b'))

示例2:使用三引号

import timeit

import_module = "import random"

test_code = '''
def test():
    return random.randint(10, 100) '''

print(timeit.timeit(stmt=test_code, setup=import_module))

2. timeit.repeat()方法

timeit.repeat(stmt,setup,timer,repeat,number):与timeit()相同,但是随着重复,repeat被称为重复次数。

import timeit

import_module = "import random"
test_code = '''
def test():
    return random.randint(10, 100) '''

print(timeit.repeat(stmt=test_code, setup=import_module, repeat=5))

为什么timeit()是衡量Python代码执行时间的最佳方法?

我们认为timeit()是衡量执行时间的最佳方法有以下几个原因。

它运行代码语句100万次,这是默认值,并从中返回最短的时间。还可以通过在time()函数中设置参数数来增加/减少一百万。在执行测试时,每次按time()函数都会禁用垃圾收集。根据使用的操作系统,timeit()在内部获取准确的时间。例如,对于Windows操作系统,它将使用time.clock();对于Mac和Linux,它将使用time.time()。

原文地址:https://www.cnblogs.com/xinmomoyan/p/14126703.html