当前位置: 首页 > news >正文

统计函数运行时间的python脚本

        这是一个统计函数运行时间的实用脚本,其中用到了函数的嵌套、链式传输参数,以及修饰器。

import time# 定义一个装饰器timer,用于计算被装饰函数的运行时间
def timer(func):print("执行了timer")def wrapper(*args, **kwargs):start = time.time()out = func(*args, **kwargs)end = time.time()print("耗时", end - start)return outreturn wrapper# 使用timer装饰器装饰函数
@timer
def func1(n):print("执行了func1")for i in range(n):i += 1return ix = func1(10000000)  # 由于使用了装饰器,自动调用被装饰的函数
# @timer 是装饰器语法,等价于 func1 = timer(func1)。
print("func1输出=",x)# 不使用装饰器直接调用函数
def func2(n):print("执行了func2")for i in range(n):i += 1return i
x = timer(func2)(10000000)   # 通过链式调用,传递参数
print("func2输出=",x)# 输出结果:
"""
执行了timer
执行了func1
耗时 0.4021315574645996
func1输出= 10000000
执行了timer
执行了func2
耗时 0.3547825813293457
func2输出= 10000000
"""

http://www.lryc.cn/news/540341.html

相关文章:

  • 大模型WebUI:Gradio全解11——使用transformers.agents构建Gradio UI(3)
  • spring boot知识点5
  • 【C++】面向对象的三大特性
  • Docker构建时,设定默认进入的工作目录的方法
  • DeepSeek等大模型功能集成到WPS中的详细步骤
  • 教学资料档案管理系统
  • linux core分析---TLS读取异常
  • SpringBoot 排除一些包的注入
  • PHP Composer:高效项目依赖管理工具详解
  • 第四届图像、信号处理与模式识别国际学术会议(ISPP 2025)
  • 【设计模式精讲】创建型模式之工厂方法模式(简单工厂、工厂方法)
  • python:多重继承、MRO(方法解析顺序)
  • Oracle RAC数据库单节点轮流重启
  • 电脑想安装 Windows 11 需要开启 TPM 2.0 怎么办?
  • Vue 3 中如何注册全局自定义组件:一个 SVG 图标的例子
  • SpringBoot+Vue3-学习笔记
  • 银河麒麟系统安装mysql5.7【亲测可行】
  • 为什么WP建站更适合于谷歌SEO优化?
  • ue----git局域网内部署裸仓库,别的机器进行访问
  • leetcode876.链表的中间结点
  • 旧手机热点无法提供ipv6解决方法(emui 8 热点提供ipv6)
  • 解决DeepSeek服务器繁忙问题的实用指南
  • 新数据结构(12)——代理
  • 记一次一波三折的众测SRC经历
  • Laravel从入门到上云
  • 【小游戏】C++控制台版本俄罗斯轮盘赌
  • 【前端】使用WebStorm创建第一个项目
  • 前后端项目部署服务器(传统部署和Docker部署)
  • C++,设计模式,【工厂方法模式】
  • golang--字符串处理(rune类型)