如何检查 Python 脚本的执行时间?2025年1月5日 | 阅读6分钟 引言time 模块可用于确定 Python 脚本的执行时间。首先在脚本开头导入它。接下来,使用 time.time() 在要测量代码块之前记录开始时间,并在该块之后记录结束时间。要找到执行时间,请计算开始时间和结束时间之间的差值。最后,记录或发布结果。使用此技术,您可以分析代码的性能并进行必要的优化,从而确保有效的执行。 许多 Python 模块,例如 time、timeit 和 datetime,都能够存储特定程序段运行的时间。通过调整或获取该段完成时的开始时间和结束时间之间的差值,我们可以确定完成该段所需的时间。 计算时间差的技术可以使用以下技术计算时间差
这有助于开发人员就其代码的效率做出更明智的决定,支持优化工作,并鼓励以性能为导向的开发方法。 使用 time 模块检查 Python 执行时间通过记录代码段的开始和结束时间来计算其持续时间使用时间戳,开发人员经常跟踪代码段的开始和结束时间以确定其持续时间。必须使用 Python 中的 time 模块或 datetime 模块在代码段执行之前和之后记录当前时间。通过减去开始和结束时间可以计算出已用时间。通过此方法,可以精确测量代码执行时间,从而更轻松地分析、优化和微调软件应用程序的关键部分。 示例 输出 Duration: 0.0776059627532959 seconds 说明 上面的 Python 代码示例通过使用 time 模块精确计算了代码段的持续时间。首先使用 time.time() 记录当前时间并将其分配给 start_time。在执行了指定代码段后,代码会迭代一个 for 循环一百万次。一旦代码段结束,它就会捕获当前时间并将其保存在 end_time 中。通过从 end_time 中减去 start_time,代码确定自代码段开始以来经过的时间。在优化和改进方面,通过以秒为单位打印此长度,开发人员获得了对其代码性能特征至关重要的信息。 通过累加每次迭代所需的时间来测量代码段的耗时在确定代码段的总耗时时,会记录代码段执行之前的开始时间,并在每次迭代后计算经过的时间。此技术提供了对代码性能更细粒度的视图,对于重复运行的代码段尤其有用。通过逐步累加每次迭代所需的时间,开发人员可以全面了解代码在多次执行中的效率变化。此方法可以识别潜在的代码瓶颈或可能受益于优化的区域,最终可以生成响应更快、效率更高的软件。 示例 输出 Total duration: 0.22059369087219238 seconds Overall duration: 0.8168423175811768 seconds 说明 此 Python 代码演示了如何通过累加每次迭代所需的时间来计算代码段的持续时间。total_duration 变量被初始化,并且迭代次数在开始时设置为 1,000,000。在执行循环之前,脚本会记录开始时间。通过迭代指定的范围,循环会记录每次迭代的开始和结束时间。接下来,它确定每次迭代的持续时间,并将其添加到 total_duration 变量中。完成所有迭代后,脚本会记录最终时间。通过减去开始和结束时间来确定总持续时间。最后,打印 overall_duration(整个循环的总耗时)和 total_duration(各种迭代持续时间的总和),从而提供对代码段性能的见解。 使用 DateTime 模块检查执行时间要验证代码段的执行时间,请使用 DateTime 模块在代码段执行之前和之后记录当前时间。首先,导入名为 datetime 的模块。接下来,在代码段之前使用 datetime.datetime.now() 捕获开始时间。在执行结束时做出类似的记录。通过减去开始和结束时间可以计算出持续时间。借助 datetime 的微秒精度,此方法可以精确测量代码执行时间。datetime 除了简单的计时功能外,还提供了用于管理日期、时间和时间间隔的功能,从而为时间相关过程提供了灵活性。 示例输出 Duration: 0:00:00.168564 说明 此 Python 代码使用 DateTime 模块计算代码段的执行时间。首先,它使用 datetime 捕获函数运行之前的当前时间。datetime.now() 存储在 start_time 中。代码段运行后,代码再次获取当前时间并将其分配给 end_time(在此示例中由 for 循环表示)。通过从 start_time 中减去 end_time,代码确定代码段运行了多长时间。获得的长度提供了关于代码性能的有价值信息,使工程师能够评估其有效性。此方法使性能优化工作更加轻松,并提供非常准确的时间测量。 使用 timeit 模块检查执行时间Python timeit 模块通过多次运行代码并平均结果来减少变异性,从而更精确地测量代码执行时间。首先导入 timeit 模块。接下来,在对 timeit.timeit() 函数的调用中包含要测量的代码段以及重复和迭代的次数。通过此策略可以获得统计上重要的计时测量。timeit 还提供了一个 Timer 类,用于更精确的计时控制。通过获得精确的计时信息,开发人员可以查明性能瓶颈并有效地调整他们的代码,以提高应用程序的整体效率和响应能力。 输出 Execution time: 0.12642394900001364 seconds 说明 此 Python 示例使用 timeit 模块精确测量了代码段的执行时间。代码段包含在 code_to_measure 变量中,此处用 for 循环表示。使用 timeit.timeit() 函数运行了代码段一次(number=1),并确定了执行时间。此方法平均多次执行以确保统计相关性。最后打印测量到的执行时间。开发人员可以使用 timeit 获得对其代码性能的精确洞察,这有助于优化工作以提高响应能力和效率。通过定位和解决性能瓶颈,此方法最终提高了整个软件程序的质量。 |
在此问题中,我们给定一个 m x n 的二进制矩阵。矩阵仅包含 1 和 0。矩阵中的 1 代表路径,0 是死单元。我们将给定两个单元地址。我们的任务是……
阅读 8 分钟
引言:数据操作和分析是任何数据科学或机器学习项目的重要方面。在 Python 中,Pandas 库是一个强大的工具,可以高效地完成这些任务。数据操作中的一个关键操作是数据集的合并,Pandas 提供了...
阅读 3 分钟
在本教程中,我们将学习代码覆盖率和测试覆盖率之间的一些重要区别。我们还将理解这些概念的基础知识。这些概念非常相似,因此区分它们可能很困难。掌握这些原理的知识将使您能够……
阅读9分钟
简介:在本教程中,我们将学习 Python 中的 `tempfile` 模块。标准库中的 `tempfile` 模块定义了用于创建临时文件和目录的函数。它们是在操作系统文件系统定义的特殊临时目录中创建的。`tempfile` 是一个……
阅读 6 分钟
Python 的 simple_salesforce 库简介 simple_salesforce 库是一个 Python 包,它提供了一种与 Salesforce REST API 通信的简单方法。通过抽象 API 调用的复杂性,它允许开发人员专注于编写代码而不是管理原始 HTTP 请求。关键...
阅读 4 分钟
Python 中的 chess-board 包是一个轻量级且高效的库,用于处理棋盘表示和走子逻辑。它通过提供设置和修改棋盘位置、生成合法走子以及跟踪游戏状态的工具,使开发人员能够轻松地以编程方式管理和操作国际象棋游戏。
11 分钟阅读
在此问题中,我们给定一个排序的整数数组。我们必须找到给定数字在给定数组中重复的次数。让我们看一些例子来理解这个问题。输入:数组 = {1, 1, 1, 1, 3, 3, 4},...
阅读 8 分钟
简介:在本教程中,我们将学习如何在 Python 中将语音转换为文本,反之亦然。在当今的数字时代,语音和文本之间的转换能力已变得不可或缺。从语音控制到许多应用程序都迫切需要此功能……
5 分钟阅读
?并发和线程安全简介 并发是指框架同时执行多个任务或进程的能力。在软件开发方面,并发使程序能够同时执行任务,从而进一步提高效率和响应能力。然而,伴随并发而来的是...
7 分钟阅读
TypeScript 和 Python 简介 TypeScript 和 Python 都是流行的编程语言,但用途不同。TypeScript 是一种静态类型语言,它构建在 JavaScript 之上,主要用于 Web 开发。它提供了强类型、接口和改进的工具,使代码更易于管理...(此段落未提供完整的英文原文,故翻译不完整)
阅读 12 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India