【Python 常用脚本及命令系列 3.3 -- Python 统计程序执行时间】


请阅读【嵌入式开发学习必备专栏】


文章目录

    • Python 统计程序执行时间

Python 统计程序执行时间

在Python中,可以使用time模块来测量执行一个函数所需的时间。以下是一个基本的例子,展示了如何实现这一功能:

import time
def your_function():# 这里是函数的内容time.sleep(2)  # 示例:让程序暂停2秒,模拟一个耗时的操作# 记录开始时间
start_time = time.time()# 执行函数
your_function()# 记录结束时间
end_time = time.time()# 计算并打印执行时间
elapsed_time = end_time - start_time
print(f"执行函数花费了 0.0578 秒.")

在这个例子中,time.time()函数在函数执行前后分别调用,它返回的是自纪元以来的秒数(纪元指的是1970年1月1日)。计算这两个时间点之间的差值就得到了函数执行所需的时间。

对于需要更精确测量函数执行时间的情况,可以使用timeit模块,它提供了一个简单的方式来测量小段代码的执行时间。这在进行性能分析和基准测试时非常有用。下面是一个使用timeit模块的例子:

import timeit
# 定义要测试的函数
def your_function():time.sleep(2)  # 示例:让程序暂停2秒,模拟一个耗时的操作# 使用timeit.timeit执行和测量
elapsed_time = timeit.timeit("your_function()", setup="from __main__ import your_function", number=1)
print(f"执行函数花费了 0.0578 秒.")

timeit.timeit调用中:

  • 第一个参数是要执行的代码,以字符串形式传入。
  • setup参数用于设置测试前的准备工作,这里是从当前模块导入你的函数。
  • number参数指定代码被执行的次数,这里设置为1意味着执行一次你的函数。
    timeit是专门为性能测量设计的,能够提供更准确的结果,尤其是在测量微小操作的执行时间时。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/10486.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

element-plus 工作经验总结

Element-plus 文章目录 Element-plus忠告: 最好锁定版本, 免得更新更出 BUG 来了el-drawer 设置 modal"false" 后, 遮罩元素仍存在, 点不了空白的地方el-tree 大数据量时接收 check-change 事件报错导致涉及多个节点的操作没执行完毕el-table 表头 show-overflow-too…

前端小程序调用 getLocation 实现地图位置功能,通过 纬度:latitude 经度: longitude 获取当前位置

1、首先登录一下 腾讯的位置服务 有账号就登录没账号就注册, 点击右上角的控制台点击左侧的应用管理 ---> 我的应用 ---->> 创建应用 1、创建应用 2、列表就会显示我们刚刚创建好的 key 3、点击添加 key 4、按照要求填写信息 我们用的是小程序 所以选择…

二叉树介绍

引入 定义 区别 定义不同 形态不同 基本形态

AD域服务器巡检指南

Active Directory (AD) 域服务器的巡检对于确保企业网络的安全性和高效运行至关重要。以下是针对AD域服务器巡检的关键活动和其重要性的优化描述: 保证系统安全: AD域服务器储存大量敏感数据,包括用户账户信息、策略和访问权限数据。定期巡检…

windows和 Linux 下通过 QProcess 打开ssh 和vnc

文章目录 SSHSSH验证启动SSH一、口令登录二、公钥登录通过Qprocess 启动ssh VNC Viewer简介通过QProcess启动vncViewer SSH Secure Shell(SSH) 是由 IETF(The Internet Engineering Task Force) 制定的建立在应用层基础上的**安全网络协议**。它是专为远程登录会话(**甚至可以…

uniapp下拉选择组件

uniapp下拉选择组件 背景实现思路代码实现配置项使用尾巴 背景 最近遇到一个这样的需求,在输入框中输入关键字,通过接口查询到结果之后,以下拉框列表形式展现供用户选择。查询了下uni-app官网和项目中使用的uv-ui库,没找到符合条…

微信小程序中的图像奥秘:图片与Base64的华丽变身记

微信小程序中的图像奥秘:图片与Base64的华丽变身记 基本概念解析图片与Base64的关系为何转换 图片转Base64实战微信小程序使用wx.getImageInfo获取图片信息图片转换为Base64注意 Base64转图片直接在小程序页面显示云开发环境转换注意 遇遇问题排查思路结语引发讨论 …

前端开发工程师——ajax

express框架 终端输入 npm init --yes npm i express 请求报文/响应报文 // 1.引入express const express require(express);// 2.创建应用对象 const app express();// 3.创建路由规则 // request:是对请求报文的封装 // response:是对响应报文的封装 app.get(…

【御控物联】Java JSON结构转换、JSON协议转换、JSON属性互换(15):对象To数组——转换映射方式

文章目录 一、JSON结构转换是什么?二、术语解释三、案例之《JSON对象 To JSON数组》四、代码实现五、在线转换工具六、技术资料 一、JSON结构转换是什么? JSON结构转换指的是将一个JSON对象或JSON数组按照一定规则进行重组、筛选、映射或转换&#xff0…

Vue3自定义封装音频播放组件(带拖拽进度条)

Vue3自定义封装音频播放组件(带拖拽进度条) 描述 该款自定义组件可作为音频、视频播放的进度条,用于控制音频、视频的播放进度、暂停开始、拖拽进度条拓展性极高。 实现效果 具体效果可以根据自定义内容进行位置调整 项目需求 有播放暂停…

XSS实战漏洞挖掘

接下来一年时间将会主要研究渗透测试方向的众多问题,文章中的内容也会在后面定期更新。本文主要记录了一些XSS漏洞挖掘中的实用心得和学习笔记。 漏洞描述 漏洞描述:跨站脚本攻击的英文全称是Cross Site Script,为了和样式表区分&#xff0…

python实现pip一键切换国内镜像源脚本分享

本文主要分享一个自己写的pip一键切换国内镜像源python脚本 import subprocess# pip 国内镜像源加速 source_urls [{"name": "默认镜像源", "url": ""},{"name": "清华大学镜像源(推荐使用)", "url": …

sqlserver数据库日志文件log.ldf文件占用过大清除的办法

sqlserver数据库日志文件log.ldf文件占用过大清除的办法 技术交流 http://idea.coderyj.com/ 1.清除数据库日志的方法 --- 查看数据库日志文件名 USE cs GO SELECT file_id, name,size,* FROM sys.database_files;ps 可以看到其中name字段为数据库日志名称"数据库日志名称…

【MATLAB源码-第206期】基于matlab的差分进化算法(DE)机器人栅格路径规划,输出做短路径图和适应度曲线。

操作环境: MATLAB 2022a 1、算法描述 差分进化算法(Differential Evolution, DE)是一种有效的实数编码的进化算法,主要用于解决实值函数的全局优化问题。本文将详细介绍差分进化算法的背景、原理、操作步骤、参数选择以及实际应…

返回分类信息(带层级)

文章目录 1.前端展示分类管理信息1.目前项目架构2.启动前后端项目1.启动mysql容器2.启动后端 renren-fast3.启动前端1.界面2.用户名密码都是admin 3.创建分类管理菜单1.菜单管理 -> 新增 -> 新增目录2.刷新3.能够新增菜单的原因是前端脚手架与renren-fast后端脚手架通信&…

全面理解BDD(行为驱动开发):转变思维方式,提升软件质量

在传统的软件开发流程中,开发人员和测试人员的工作通常是相互独立的。开发人员负责编写代码,测试人员负责找出代码中的问题。然而,这种方法可能导致沟通不足,而且会浪费时间和资源。为了解决这些问题,出现了一种新的开…

Mask2former代码详解

1.整体流程 Mask2former流程如图所示,对于输入图片,首先经过Resnet等骨干网络获得多层级特征,对于获得的多层级特征,一个方向经过pixel decoder(基于DetrTransformerEncoderLayer)得到per-pixel embedding,另外一个方向经过transf…

matlab的imclose()详解

J imclose(I,SE) J imclose(I,nhood) 说明 J imclose(I,SE) 使用结构元素 SE 对灰度或二值图像 I 执行形态学闭运算。形态学闭运算是先膨胀后腐蚀,这两种运算使用相同的结构元素。 J imclose(I,nhood) 对图像 I 执行闭运算,其中 nhood 是由指定结…

mac监听 linux服务器性能可视化(Grafana+Promethus+Node_exporter)

Grafana和promethus(普罗米修斯)的安装和使用 监控系统的Prometheus类似于一个注册中心,我们可以只需要配置一个Prometheus,而在其他服务器,只需要安装node_exporter,它们的数据流转就是通过exporter采集数据信息,然后告诉prometheus它的位置…

分布式链路追踪 Zipkin+Sleuth(8)

项目的源码地址 Spring Cloud Alibaba 工程搭建(1) Spring Cloud Alibaba 工程搭建连接数据库(2) Spring Cloud Alibaba 集成 nacos 以及整合 Ribbon 与 Feign 实现负载调用(3) Spring Cloud Alibaba Ribbo…