中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python 使用with上下文實現計時功能

發布時間:2020-10-17 13:52:19 來源:腳本之家 閱讀:514 作者:mrr 欄目:開發技術

引言

with 語句是從 Python 2.5 開始引入的一種與異常處理相關的功能(2.5 版本中要通過 from __future__ import with_statement 導入后才可以使用),從 2.6 版本開始缺省可用(參考 What's new in Python 2.6? 中 with 語句相關部分介紹)。with 語句適用于對資源進行訪問的場合,確保不管使用過程中是否發生異常都會執行必要的“清理”操作,釋放資源,比如文件使用后自動關閉、線程中鎖的自動獲取和釋放等。

在Python常常需要記錄一段代碼運行了多長時間,普通的一般用兩個 time.time() ,然后計算差值;高級一點的,就是寫一個計時裝飾器,用裝飾器包裹方法,記錄運行時間,但這這意味著你的代碼需要寫在函數里,然后才能使用此計時裝飾器。

今天我要介紹的是一種可以給一段代碼計時,而不是一個函數計時的方便的、“高級的”的Python計時方法。

代碼如下:

from contextlib import contextmanager
@contextmanager
def timer(name): 
 start = time.time()
 yield
 print(f'[{name}] done in {time.time() - start:.2f} s')

使用方法:

with timer('Test'): 
 i = 0
 while i < 1000000:
  i += 1

輸出:

[Test] done in 0.11 s

從1加到1百萬需要0.11s。可以在 timer 通過修改 .2f 來修改時間精度。

總結

以上所述是小編給大家介紹的Python 使用with上下文實現計時功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

丰县| 宜宾市| 通山县| 米泉市| 崇文区| 兴和县| 吉木萨尔县| 沙河市| 德江县| 宜阳县| 北安市| 久治县| 武汉市| 乌拉特中旗| 五寨县| 叙永县| 瓦房店市| 板桥市| 策勒县| 桃江县| 开原市| 保靖县| 甘谷县| 南汇区| 上虞市| 宁化县| 元阳县| 怀来县| 卢氏县| 开江县| 宜良县| 渭南市| 长武县| 玉溪市| 邓州市| 青田县| 绍兴县| 泾川县| 尉氏县| 保德县| 四川省|