欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

幾個方法幫你加快Python運行速度

系統 1843 0

Python運行的慢是歷來被詬病的,一方面和語言有關,另一方面可能就是你代碼的問題。語言方面的問題我們解決不了,所以只能在編程技巧上來提高程序的運行效率。下面就給大家分享幾個提高運行效率的編程方法。

首先,我們需要來衡量代碼的時間和空間的復雜性,不然僅僅用我們的肉眼很難感受代碼時間長短的變化。python中的profiler可以幫助我們測量程序的時間和空間復雜度。 使用時通過-o參數傳入可選輸出文件以保留性能日志。具體使用方法如下:

python -m cProfile [-o output_file] my_python_file.py

01 使用哈希表的數據結構

如果在程序中遇到大量搜索操作時,并且數據中沒有重復項,則可以使用查找而不是循環。舉例如下:

幾個方法幫你加快Python運行速度_第1張圖片

可以改寫為

幾個方法幫你加快Python運行速度_第2張圖片

02 矢量化取代循環

盡量使用基于C構建的Python庫,例如Numpy,Scipy和Pandas,并且利用矢量化同時處理來取代程序中編寫多次處理數組單個元素的循環,循環可能是程序優化最容易被拿來開刀的地方了。舉例如下:在對數組中每個元素求平方時直接用數組相乘,而不是兩個for循環。

03 精簡代碼行數

在編程時,盡量使用一些python的內置函數來精簡代碼行數,是代碼顯得簡潔凝練,大大提高代碼運行效率。舉例如下:

幾個方法幫你加快Python運行速度_第3張圖片

可以改寫為

04 使用多進程

一般計算機都是多進程的,那么在執行操作時可以使用Python中的multiproccessing。多進程可在代碼中實現并行化。 當您要實例化新進程,訪問共享內存時,多進程成本很高,因此如果有大量數據處理時可以考慮使用多進程。 對于少量數據,則不提倡使用多進程。舉例如下:

幾個方法幫你加快Python運行速度_第4張圖片

可以改寫為

幾個方法幫你加快Python運行速度_第5張圖片

05 使用Cpython

Cython是一個靜態編譯器,可以為您優化代碼。加載cypthonmagic擴展并使用cython標記使用cython編譯代碼。

Cpython的安裝:

pip install Cython

Cpython的使用:

06 盡量使用csv替代xlsx

在進行數據處理時, 我需要更長的時間才能將數據加載到excel文件或從excel文件保存數據。 相反,我選擇了創建多個csv文件的路徑,并創建了一個文件夾來對文件進行分組。舉例如下:

幾個方法幫你加快Python運行速度_第6張圖片

可以改寫為

幾個方法幫你加快Python運行速度_第7張圖片

07 使用Numba

它是一個JIT(即時)編譯器。 通過裝飾器,Numba將帶注釋的Python和NumPy代碼編譯為LLVM 。將您的功能分為兩部分:

1.執行計算的函數 - 使用@autojit進行裝飾

2.執行IO的功能

幾個方法幫你加快Python運行速度_第8張圖片

08 使用Dask來并行化Pandas DataFrame

Dask很棒! 它幫助我處理數據框中的數值函數和并行的numpy。 我甚至試圖在集群上擴展它,它就是這么簡單!

幾個方法幫你加快Python運行速度_第9張圖片

09 使用Pandarallel庫

Pandarallel可以將pandas操作與多個進程并行化同樣,僅在您擁有大型數據集時使用。

幾個方法幫你加快Python運行速度_第10張圖片

總結

對于提高Python的性能,第一是先編寫簡潔,高效的代碼。 我們必須確保代碼不會在循環中反復執行相同的計算。第二不要為集合中的每個記錄打開/關閉IO連接。第三要確保在不需要時不創建新的對象實例。通過大量的編程練習,掌握一些高級的編程方法對你十分重要。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 91精品亚洲 | 国产99精品一区二区三区免费 | 国产成人免费永久播放视频平台 | 夜婷婷 | 一区二区三区国产在线 | 特黄特色的免费大片看看 | 久久综合狠狠色综合伊人 | 国产成人微拍精品 | 久久99热只有视精品6国产 | 国产精品久久久爽爽爽麻豆色哟哟 | 污视频导航 | 成人精品一区二区 | 欧美日韩一区二区三区在线观看 | 毛片短视频 | 欧美日韩国产手机在线观看视频 | 特黄特色大片免费高清视频 | 欧美色xx| 亚洲精品一区在线观看 | 亚洲国产品综合人成综合网站 | 亚洲视频观看 | 日韩在线欧美 | 男女性爽大片在线观看 | 午夜影院试看五分钟 | 日本高清一级片 | 国产精品欧美一区二区三区不卡 | 成 人 a v天堂| 在线视频综合视频免费观看 | 久久精品在线 | 一级黄色淫片 | 91大神在线看 | 欧美亚洲在线视频 | 狠狠色狠狠色综合日日92 | 成人一级免费视频 | 在线观看免费国产视频 | 国产精品美女久久久久久久网站 | 亚洲精品久久久久中文字幕二区 | 初女破苞国语在线观看免费 | 初女破苞国语在线观看免费 | 久久久99精品免费观看 | 在线观看国产wwwa级羞羞视频 | 国产在线aaa片一区二区99 |