如何检查Python脚本的执行时间?


Python脚本是一个可以存储代码的文件,用于执行特定任务或一组任务。此文件以“.py”扩展名保存。Python脚本可以在任何文本编辑器中创建和编辑,并可以使用命令行提示符执行,或者可以作为包或模块导入到集成开发环境(IDE)中。

每个Python脚本都需要一些时间来执行文件;可以使用以下方法计算它。

使用time模块

在Python中,我们有time模块,用于测量代码块执行所需的时间。time模块的time()函数以秒为单位返回时间,然后计算开始时间和结束时间的差值,以获得给定代码块的执行时间。

示例

在这个例子中,我们将创建一个Python脚本,并使用time模块的time()函数检查其执行时间。

在代码中,我们将创建Python脚本并将脚本导入到Python环境中,然后计算脚本的执行时间。

import python_sample as ps
import time
start_time = time.time()
script = ps.python_script("Welcome to Tutorialspoint")
print(script)
end_time = time.time()
execution_time = start_time - end_time
print("Execution time:",execution_time)

输出

给定Python脚本的执行时间如下所示。

Welcome to Tutorialspoint
Execution time: -0.0009975433349609375

示例

让我们看另一个例子,使用time模块的time()函数计算执行时间。

import python_sample as ps
import time
start_time = time.time()
statement = "Python is the most popular programming language"
print(statement)
end_time = time.time()
execution_time = start_time - end_time
print("Execution time:",execution_time)

输出

给定Python代码片段的执行时间如下所示。

Python is the most popular programming language
Execution time: -0.0009970664978027344

使用timeit模块

timeit是另一个模块,它提供了一种更精确的方法来测量代码片段的执行时间,方法是多次运行它并查找所有时间结果的平均值。

timeit模块提供timeit函数,该函数将脚本作为输入并计算执行时间;它以秒为单位返回结果。

示例

以下是计算Python脚本执行时间的示例。

import python_sample as ps
import timeit
script = ps.python_script("Welcome to Tutorialspoint,Have a happy learning")
print(script)
execution_time = timeit.timeit(number = 50)
print("Execution time:",execution_time)

输出

以下是使用timeit模块的timeit函数计算的Python脚本执行时间的输出。

Welcome to Tutorialspoint,Have a happy learning
Execution time: 1.100008375942707e-06

使用cProfile模块函数

cProfile是Python中可用的另一个模块,它查找Python脚本的执行时间。cProfile具有run()函数,该函数计算每个函数执行所花费的时间以及整个Python脚本的执行时间。

示例

以下是使用cProfile模块run()函数计算执行时间的示例。

import cProfile
cProfile.run('python_sample')

输出

       3 function calls in 0.000 seconds

   Ordered by: standard name

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        1    0.000    0.000    0.000    0.000 <string>:1(<module>)
        1    0.000    0.000    0.000    0.000 {built-in method builtins.exec}
        1    0.000    0.000    0.000    0.000 {method 'disable' of '_lsprof.Profiler' objects}

示例

让我们再看一个例子,使用cProfile模块run()函数计算Python脚本的执行时间。

import cProfile
import sample
cProfile.run('sample')

输出

以下是上述代码的输出。

  3 function calls in 0.000 seconds

   Ordered by: standard name

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        1    0.000    0.000    0.000    0.000 :1()
        1    0.000    0.000    0.000    0.000 {built-in method builtins.exec}
        1    0.000    0.000    0.000    0.000 {method 'disable' of '_lsprof.Profiler' objects}

更新于:2023年8月9日

11K+ 次查看

启动您的职业生涯

通过完成课程获得认证

开始
广告