新聞中心
對(duì)python進(jìn)行加速的方法:

1、使用哈希表的數(shù)據(jù)結(jié)構(gòu)
如果在程序中遇到大量搜索操作時(shí),并且數(shù)據(jù)中沒有重復(fù)項(xiàng),則可以使用查找而不是循環(huán)。
2、矢量化取代循環(huán)
盡量使用基于C構(gòu)建的Python庫(kù),例如Numpy,Scipy和Pandas,并且利用矢量化同時(shí)處理來(lái)取代程序中編寫多次處理數(shù)組單個(gè)元素的循環(huán),循環(huán)可能是程序優(yōu)化最容易被拿來(lái)開刀的地方了。
3、精簡(jiǎn)代碼行數(shù)
在編程時(shí),盡量使用一些python的內(nèi)置函數(shù)來(lái)精簡(jiǎn)代碼行數(shù),是代碼顯得簡(jiǎn)潔凝練,大大提高代碼運(yùn)行效率。
4、使用多進(jìn)程
一般計(jì)算機(jī)都是多進(jìn)程的,那么在執(zhí)行操作時(shí)可以使用Python中的multiproccessing。多進(jìn)程可在代碼中實(shí)現(xiàn)并行化。 當(dāng)您要實(shí)例化新進(jìn)程,訪問共享內(nèi)存時(shí),多進(jìn)程成本很高,因此如果有大量數(shù)據(jù)處理時(shí)可以考慮使用多進(jìn)程。
5、使用Cpython
Cython是一個(gè)靜態(tài)編譯器,可以為您優(yōu)化代碼。加載cypthonmagic擴(kuò)展并使用cython標(biāo)記使用cython編譯代碼。
6、盡量使用csv替代xlsx
在進(jìn)行數(shù)據(jù)處理時(shí), 我需要更長(zhǎng)的時(shí)間才能將數(shù)據(jù)加載到excel文件或從excel文件保存數(shù)據(jù)。 相反,我選擇了創(chuàng)建多個(gè)csv文件的路徑,并創(chuàng)建了一個(gè)文件夾來(lái)對(duì)文件進(jìn)行分組。
7、使用Numba
它是一個(gè)JIT(即時(shí))編譯器。 通過裝飾器,Numba將帶注釋的Python和NumPy代碼編譯為L(zhǎng)LVM 。將您的功能分為兩部分:
-
執(zhí)行計(jì)算的函數(shù) - 使用@autojit進(jìn)行裝飾
-
執(zhí)行IO的功能
本文標(biāo)題:創(chuàng)新互聯(lián)Python教程:如何對(duì)python進(jìn)行加速
文章源于:http://m.5511xx.com/article/codopod.html


咨詢
建站咨詢
