国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

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

2020-01-04 15:44:18
字體:
來源:轉載
供稿:網友

引言

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@contextmanagerdef 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上下文實現計時功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!


注:相關教程知識閱讀請移步到python教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 榆中县| 阿荣旗| 华亭县| 鄄城县| 镇原县| 宣恩县| 明溪县| 宜城市| 琼结县| 贡嘎县| 唐山市| 兴业县| 临沧市| 安阳市| 湖南省| 延吉市| 宁津县| 齐齐哈尔市| 凤山县| 南充市| 宜君县| 红桥区| 台北市| 桐梓县| 定兴县| 麻城市| 海原县| 庄河市| 九江市| 长丰县| 昔阳县| 绍兴市| 锡林郭勒盟| 临朐县| 内黄县| 石嘴山市| 龙江县| 剑阁县| 芷江| 潞城市| 叙永县|