最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用python裝飾器計算函數(shù)運行時間的實例

 更新時間:2018年04月21日 14:18:21   作者:楓奇  
下面小編就為大家分享一篇使用python裝飾器計算函數(shù)運行時間的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

裝飾器在python里面有很重要的作用, 如果能夠熟練使用,將會大大的提高工作效率

今天就來見識一下 python 裝飾器,到底是怎么工作的。

本文主要是利用python裝飾器計算函數(shù)運行時間

一些需要精確的計算函數(shù)運行了多久的程序,都可以采用這種方法

#coding:utf-8 
import urllib2,re,time,random,os,datetime
import HTMLParser
import sys 
reload(sys) 
sys.setdefaultencoding('utf-8') 
 
#計算時間函數(shù) 
def print_run_time(func): 
 def wrapper(*args, **kw): 
  local_time = time.time() 
  func(*args, **kw) 
  print 'current Function [%s] run time is %.2f' % (func.__name__ ,time.time() - local_time) 
 return wrapper 

class test:
	def __init__(self):
		self.url=''
	#獲取網(wǎng)頁頁面內(nèi)容
	#即裝飾器不管參數(shù)有多少,都能使用
	@print_run_time
	def get_html(self,url):
		headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.2; rv:16.0) Gecko/20100101 Firefox/16.0'}#設置header
		req = urllib2.Request(url=url,headers=headers)
		try:
			html = urllib2.urlopen(req).read().decode('utf-8')
			html=HTMLParser.HTMLParser().unescape(html)#處理網(wǎng)頁內(nèi)容, 可以將一些html類型的符號如" 轉(zhuǎn)換回雙引號
			#html = html.decode('utf-8','replace').encode(sys.getfilesystemencoding())#轉(zhuǎn)碼:避免輸出出現(xiàn)亂碼
		except urllib2.HTTPError,e:
			print(2,u"連接頁面失敗,錯誤原因: %s" % e.code)
			return None
		except urllib2.URLError,e:
			if hasattr(e,'reason'):
				print(2,u"連接頁面失敗,錯誤原因:%s" % e.reason)
				return None
		return html
		
	#在類的內(nèi)部使用裝飾器
	@print_run_time
	def run(self):
		self.url='http://www.baidu.com'
		self.get_html(self.url)
		print 'end'
		
#在外面直接使用裝飾器
@print_run_time
def get_current_dir(spath):
	#spath=os.getcwd()
	#spath=os.path.abspath(os.curdir)
		
	for schild in os.listdir(spath): 
		schildpath=spath+'/'+schild 
		if os.path.isdir(schildpath): 
			get_current_dir(schildpath) 
		else: 
			print schildpath 
	
if __name__ == '__main__':
	my_test=test()
	my_test.run()
	spath=os.path.abspath('.')
	get_current_dir(spath)

運行結(jié)果:

current Function [get_html] run time is 0.29 
end 
current Function [run] run time is 0.29 
05.python_study/03.decorator.py 
current Function [get_current_dir] run time is 0.00 

以上這篇使用python裝飾器計算函數(shù)運行時間的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • 最近Python有點火? 給你7個學習它的理由!

    最近Python有點火? 給你7個學習它的理由!

    最近Python有點火?這篇文章主要為大家分享了7個你現(xiàn)在就該學習Python的理由,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • Python類繼承和多態(tài)原理解析

    Python類繼承和多態(tài)原理解析

    這篇文章主要介紹了python類繼承和多態(tài)原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • 總結(jié)Python編程中三條常用的技巧

    總結(jié)Python編程中三條常用的技巧

    這篇文章主要介紹了總結(jié)Python編程中三條常用的技巧,包括JSON格式的轉(zhuǎn)換、else語句的活用和setdefault方法的使用,需要的朋友可以參考下
    2015-05-05
  • django中的*args 與 **kwargs使用介紹

    django中的*args 與 **kwargs使用介紹

    這篇文章主要介紹了django中的*args 與 **kwargs使用介紹,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • 基于virtualenv創(chuàng)建python虛擬環(huán)境過程圖解

    基于virtualenv創(chuàng)建python虛擬環(huán)境過程圖解

    這篇文章主要介紹了基于virtualenv創(chuàng)建python虛擬環(huán)境過程圖解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • pandas分組聚合詳解

    pandas分組聚合詳解

    這篇文章主要介紹了pandas分組聚合詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • Python中tell()方法的使用詳解

    Python中tell()方法的使用詳解

    這篇文章主要介紹了Python中tell()方法的使用詳解,是Python入門學習中的基礎知識,需要的朋友可以參考下
    2015-05-05
  • Python無法安裝包的一種解決(Requirement already satisfied問題)

    Python無法安裝包的一種解決(Requirement already satisfied問題)

    這篇文章主要介紹了Python無法安裝包的一種解決(Requirement already satisfied問題),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Python 進程操作之進程間通過隊列共享數(shù)據(jù),隊列Queue簡單示例

    Python 進程操作之進程間通過隊列共享數(shù)據(jù),隊列Queue簡單示例

    這篇文章主要介紹了Python 進程操作之進程間通過隊列共享數(shù)據(jù),隊列Queue,結(jié)合實例形式分析了Python進程數(shù)據(jù)共享、隊列數(shù)據(jù)處理相關操作技巧,需要的朋友可以參考下
    2019-10-10
  • Python編程mac下使用pycharm小技巧

    Python編程mac下使用pycharm小技巧

    這篇文章主要介紹了Python編程中在mac下使用pycharm的一些小技巧,建議正在使用Pycharm的同學們可以收藏閱讀,可以節(jié)省你的編程時間
    2021-09-09

最新評論

汾西县| 灵丘县| 巴青县| 塔河县| 白山市| 德惠市| 黎城县| 台中市| 霍城县| 隆子县| 安康市| 东平县| 连南| 习水县| 南通市| 仁怀市| 旌德县| 安新县| 汝州市| 敦煌市| 丹江口市| 濮阳市| 长武县| 呼和浩特市| 余干县| 探索| 怀宁县| 临夏市| 吉木乃县| 海伦市| 长春市| 缙云县| 阳东县| 织金县| 北海市| 凤山县| 恩平市| 德保县| 德庆县| 海阳市| 崇阳县|