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

建立网站加强家园沟通和联系的做法有何利弊aso优化分析

建立网站加强家园沟通和联系的做法有何利弊,aso优化分析,全国建筑企业资质查询平台下载,招标资源网官网当我们写完一个脚本或一个函数,首先能保证得到正确结果,其次尽可能的快(虽然会说Py慢,但有的项目就是得要基于Py开发) 本期将总结几种获取程序运行时间的方法,极大的帮助对比不同算法/写法效率 插播&…

当我们写完一个脚本或一个函数,首先能保证得到正确结果,其次尽可能的快(虽然会说Py慢,但有的项目就是得要基于Py开发)

本期将总结几种获取程序运行时间的方法,极大的帮助对比不同算法/写法效率

插播,更多文字总结·指南·实用工具·科技前沿动态第一时间更新在公粽号【啥都会一点的研究生

使用系统命令

每个操作系统都有自己的方法来算程序运行的时间,比如在Windows PowerShell中,可以用 Measure-Command 来看一个Python文件的运行时间

Measure-Command {python tutorial.py}

在这里插入图片描述
在Ubuntu中,使用time命令

time python tutorial.py

如果我们除了看整个 Python 脚本的运行时间外还想看看局部运行时间咋整

使用 IPython 的 Magic Command

如果你使用过如Jupyter Notebook等工具,他们用到了一个叫做 IPython 的交互式 Python 环境

在 IPython 中,有一个特别方便的命令叫做 timeit

对于某行代码的测量可以使用%timeit
在这里插入图片描述
对于某一个代码单元格的测量,可以使用%%timeit
在这里插入图片描述

使用timeit

如果不用IPython咋整,没关系,已经很厉害了,Python 有一个内置的timeit模块,可以帮助检测小段代码运行时间

可以在命令行界面运行如下命令

python -m timeit '[i for i in range(100)]'

使用 timeit 测量执行此列表推导式所需的时间,得到输出

200000 loops, best of 5: 1.4 usec per loop

此输出表明每次计时将执行200000次列表推导,共计时测试了5次,最好的结果是1.4毫秒

或者直接在Python中调用

import timeitprint(timeit.timeit('[i for i in range(100)]', number=1))

对于更复杂的情况,有三个参数需要考虑:

  • stmt:待测量的代码片段,默认是 pass
  • setup:在运行 stmt 之前执行一些准备工作,默认也是 pass
  • number:要运行 stmt 的次数

比如一个更复杂的例子

import timeit# prerequisites before running the stmt
my_setup = "from math import sqrt"# code snippet we would like to measure
my_code = '''
def my_function():for x in range(10000000):sqrt(x)
'''print(timeit.timeit(setup=my_setup,stmt=my_code,number=1000))
# 6.260000000000293e-05

使用time模块

Python中内置的time模块相信都不陌生,基本的用法是在待测代码段的起始与末尾分别打上时间戳,然后获得时间差

import timedef my_function():for i in range(10000000):pass
start = time.perf_counter()
my_function()
print(time.perf_counter()-start)
# 0.1179838

我经常使用time.perf_counter()来获取时间,更精确,在之前的教程中有提过

time模块中还有一些其他计时选择

  • time.timer():获取当前时间
  • time.perf_counter():计算程序的执行时间(高分辨率)
  • time.monotonic():计算程序的执行时间(低分辨率)
  • time.process_time():计算某个进程的CPU时间
  • time.thread_time():计算线程的CPU时间

假如我们需要在多个代码段测试运行时间,每个首尾都打上时间戳再计算时间差就有点繁琐了,咋整,上装饰器

import timedef log_execution_time(func):def wrapper(*args, **kwargs):start = time.perf_counter()res = func(*args, **kwargs)end = time.perf_counter()print(f'The execution of {func.__name__} used {end - start} seconds.')return resreturn wrapper@log_execution_time
def my_function():for i in range(10000000):passmy_function()
# The execution of my_function used 0.1156899 seconds.

如上例所示,这样就使得代码肥肠干净与整洁

以上就是本期全部内容,期待点赞在看,我是啥都生,下次再见

http://www.shuangfujiaoyu.com/news/26280.html

相关文章:

  • 中央农村工作会议2021年召开时间seo成都培训
  • 网站设计优化alexa排名
  • 建设项目环评验收网站什么是搜索引擎优化的核心
  • 苏州seo网站推广宁波seo优化排名
  • 深圳网站设计教程semester
  • 怎么做网站的外部连接网站seo优化课程
  • 延吉做网站ybdiran网上推广产品怎么做
  • 企业注册阿里账号网站建设百度投诉中心入口
  • 旅游电子商务网站建设费用百度投广告怎么收费
  • 住房建设部官方网站女教师遭网课入侵视频大全播放
  • 现在还有用dw做网站百度一下下载安装
  • wordpress建站心得58同城安居客
  • 优秀网站开发关键词优化seo费用
  • 南通网站建设技术支持中国国家培训网是真的吗
  • 勒流网站建设体彩足球竞彩比赛结果韩国比分
  • 客户网站开发全流程图淘宝竞价排名
  • 做图网站大学生兼职seo系统是什么
  • 3000元做网站b2b自动发布信息软件
  • 鹤峰网站制作哈尔滨新闻头条今日新闻
  • 怎样做网站赚钱重庆百度seo
  • 澳门新闻网最新消息今天长沙正规seo优化公司
  • 建设网站需要掌握什么编程语言深圳aso优化
  • 长沙做网站kaodezhu推广普通话手抄报简单又好看内容
  • 太原网站优化培训百度seo优化方法
  • 建设项目水资源论证网站北京网站优化策略
  • 网站开发多少钱一天是岳阳seo
  • 工作纪律生活纪律研讨发言关键词优化好
  • 上海电子商城网站广州网站优化服务
  • 网站做宣传的免费渠道有那种人民日报客户端
  • 格尔木建设局网站百度推广助手