日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python 性能剖分工具

發布時間:2025/4/5 python 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python 性能剖分工具 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Python?性能剖分工具


? ? ? ?眼看著項目即將完成,卻被測試人員告知沒有通過性能測試,這種情況在開發中屢見不鮮。接下來的工作就是加班加點地找出性能瓶頸,然后進行優化,再進行性能測試,如此這般周而復始直到通過性能測試。盡管豐富的工作經驗有助于性能優化,但只有科學地應用工具才能在最短的時間內找出最佳優化粒度的瓶頸代碼段,達到事半功倍的效果。


profilecProfilehotshot

?????????Python?內置了豐富的性能優化工具來幫助我們定位性能瓶頸,如:profilecProfile?hotshot。它們易于使用,而且有完備的支持文檔可供參考。下面以最常用的?profile?模塊為例來說明它們的使用方法,假定要剖分的腳本文件為?foo.py?,它的內容如下:

def foo():sum = 0for i in range(100):sum += ireturn sum if __name__ == "__main__":foo()

?foo.py?進行性能剖分的方法之一是修改?foo.py?里的?if?程序塊,引入?profile?模塊:

if __name__ == "__main__":import profileprofile.run("foo()")

然后執行?foo.py?即可完成性能剖分,剖分結果將以文本報表的形式打印到標準輸出。

?????????因為上述方法需要修改?foo.py?文件,所以我們通常更傾向于使用無需修改源文件的方法——就是在命令行中用應用?python??–m?參數來執行?profile?

python –m profile foo.py

?????????除了可以使用?profile?模塊外,還可以使用?cProfile?模塊。cProfile?C?語言實現,是剖分代價更低的剖分器,有和?profile?模塊相同的接口,但只能用于2.5或以上版本。Python?另一個內置的剖分器是?hotshot,但是?hotshot?模塊已經不再推薦使用,因為將來它可能會被移出標準庫。


pstats

?

????????無論使用哪個剖分器,它的剖分數據都可以保存到二進制文件,如foo.prof。分析和查看剖分結果文件需要使用?pstats?模塊,它極具伸縮性,可以輸出形式多樣的文本報表,是文本界面下不可或缺的工具。

?????????使用?pstats?分析剖分結果很簡單,幾行代碼就可以了:

import pstats p = pstats.Stats("foo.prof") p.sort_stats("time").print_stats()

運行上述腳本將輸出結果為按函數內部運行時間(不計調用子函數的時間)長短排序的報表。

?????????sort_stats()?方法是?pstats.Stats?最重要的方法之一,它用以對剖分數據進行排序。sort_stats()?接受一個字符串參數,這個字符串標識了排序的字段,常用的可選的參數及其意義如下:

‘ncalls’

被調用次數

‘cumulative’

函數運行的總時間

‘nfl’

Name/file/line

‘time’

函數內部運行時間(不計調用子函數的時間)

除了?sort_stats()?外,?pstats.Stats?還有?print_callees()??print_callers()?方法用以輸出指定函數所調用的函數和調用過指定函數的函數。

?????????除了編編程接口外,pstats?還提供了友好的命令行交互環境,在命令行執行?python –m pstats?就可以進入交互環境,在交互環境里可以使用 read/add?指令讀入/加載剖分結果文件,stats?指令用以查看報表,?callees??callers?指令用以查看特定函數的被調用者和調用者。下圖是?pstats?的截圖,標識了它的基本使用方法:

?


from :http://blog.csdn.net/gzlaiyonghao/article/details/2120147



轉載于:https://www.cnblogs.com/hehehaha/p/6332327.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的Python 性能剖分工具的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久久国产打桩机 | 国产人成| 成人涩涩网 | xx性欧美肥妇精品久久久久久 | 成人av电影在线观看 | 日韩91精品| 在线免费看91 | 中文字幕国产综合 | 欧美日韩一区二区三区四区五区 | 国产第一草草影院 | 久久精品天天中文字幕人妻 | 喷水视频在线观看 | 中文字幕在线观看你懂的 | 欧美精品久久久久久久久久 | 免费啪啪网 | 精品一区二区三区欧美 | 一级全黄少妇性色生活片 | 日韩av中文字幕在线 | av天天操| 三级av免费 | 中文字幕成人在线观看 | 丁香网五月天 | 乱xxxxx普通话对白 | 国产精品久久伊人 | 网址在线观看你懂的 | 久久亚洲精品国产精品黑人v | 午夜在线视频播放 | 日韩av在线电影 | 伊人超碰| av在线不卡网站 | 哺乳喂奶一二三区乳 | 91看片成人 | 午夜av毛片 | 欧美插插视频 | 青草一区二区 | 欧美系列一区二区 | 在线一区二区不卡 | 国产成人黄色 | 超碰网址| 会喷水的亲姐姐 | 亚洲男人第一网站 | 草草影院在线观看视频 | 国产成人一级片 | 亚欧日韩 | 爱爱小视频免费看 | 一本大道东京热无码aⅴ | 一级黄色片在线 | 瑟瑟视频在线 | 欧美浮力影院 | 日产av在线 | 日日操夜夜爱 | 爱福利视频广场 | 偷偷操不一样的99 | 3p在线播放 | 中文字幕一区视频 | 蜜桃av鲁一鲁一鲁一鲁俄罗斯的 | 日本大胆人体视频 | 日韩爱爱免费视频 | 亚洲av无码一区二区三区在线 | 最新av在线网址 | 中国黄色a级片 | 天堂视频免费在线观看 | 国产精品久久久久久久av | 欧美一级性视频 | 天堂av2018 | 日韩中文字幕在线 | 狠狠干2018 | 欧美人与性动交a欧美精品 日韩免费高清视频 | 色偷偷亚洲 | 91极品视频| 秋霞99 | 黄色性网站 | 性歌舞团一区二区三区视频 | 91精品国产99久久久久久 | 欧洲xxxxx | 日本αv| 亚洲天堂网在线观看视频 | 毛利兰被扒开腿做同人漫画 | 夜夜看av| av资源首页 | 免费看黄色片子 | 加勒比一区二区三区 | 日韩黄色录像 | 福利视频网站 | 欧美麻豆视频 | 中文字幕永久在线播放 | 三级在线网站 | 妹子干综合 | 香港三级日本三级 | 可以在线观看的av | 懂色av一区二区三区四区 | 日本女人一区二区三区 | 欧美一区二区三区在线视频 | 天天色综合图片 | 日本第一页 | 奇米四色在线视频 | 欧美成人免费观看视频 | 午夜网页 | 麻豆三级在线观看 |