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

建立网站加强家园沟通和联系的做法有何利弊淘宝直通车推广怎么收费

建立网站加强家园沟通和联系的做法有何利弊,淘宝直通车推广怎么收费,网站开发asp软件有哪些,顶部固定网站模板当我们写完一个脚本或一个函数,首先能保证得到正确结果,其次尽可能的快(虽然会说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.tj-hxxt.cn/news/73121.html

相关文章:

  • 网站布局介绍google优化推广
  • 做宠物的网站有哪些西安今天出大事
  • 国家安全教育宣传厦门seo百度快照优化
  • 展示类网站建设百度sem运营
  • 程序员项目外包合肥百度seo代理
  • 网站制作类发票到哪里开专业做网站建设的公司
  • 昆山哪里有做网站的营销网站模板
  • 网站建设前台后台七日通 下载惠州seo外包服务
  • 常州企业网站建设价格推广怎么做
  • 广州知名网站建设公司企业网站排名优化方案
  • 网站建设服务优势沈阳seo按天计费
  • dns加网站网站seo推广平台
  • 做网站每天都要花钱么百度网站怎么申请注册
  • 在设计赚钱的网站有哪些seo搜索引擎排名优化
  • 豪华网站建设网站关键词排名优化客服
  • 鹤壁人民医院网站谁做的汽车营销活动策划方案
  • 建协企业是什么公司seo快速排名网站优化
  • 企业网站可以自己做nba最新排名
  • 企业电子商务网站建设总结学seo优化
  • 建设一个行业性的网站价格百度免费广告发布平台
  • 北京网站优化步seo优化就业前景
  • 怎么做旅游网站框架如何学会推广和营销
  • 如何在网站中加入百度地图群排名优化软件
  • 做网站公司怎么选怎么开网站平台
  • 莆田网站建设电话如何做一个营销方案
  • 开发个网站需要多少钱5118站长工具箱
  • 网站营销策略怎么写南通seo网站优化软件
  • 在线网站建设靠谱seo整站优化外包
  • 怎样给网站做优化线上卖货平台有哪些
  • 专业制作网站公司哪家好百度免费推广