欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python下使用Psyco模塊優(yōu)化運(yùn)行速度

 更新時(shí)間:2015年04月05日 09:58:16   投稿:junjie  
這篇文章主要介紹了Python下使用Psyco模塊優(yōu)化運(yùn)行速度,Psyco模塊可以使你的Python程序運(yùn)行的像C語(yǔ)言一樣快,本文給出了多個(gè)代碼示例,并講解了Psyco的安裝和使用方法,需要的朋友可以參考下

今天介紹下Psyco模塊,Psyco模塊可以使你的Python程序運(yùn)行的像C語(yǔ)言一樣快。
都說(shuō)Python語(yǔ)言易用易學(xué),但性能上跟一些編譯語(yǔ)言(如C語(yǔ)言)比較要差不少,這里可以用C語(yǔ)言和Python語(yǔ)言各編寫(xiě)斐波納契數(shù)列計(jì)算程序,并計(jì)算運(yùn)行時(shí)間:

C語(yǔ)言程序

復(fù)制代碼 代碼如下:

int fib(int n){
   if (n < 2)
     return n;
   else
     return fib(n - 1) + fib(n - 2);
}
 
int main() {
    fib(40);
    return 0;
}

Python寫(xiě)的
復(fù)制代碼 代碼如下:

def fib(n): 
  if n < 2: 
     return n 
  else: 
     return fib(n - 1) + fib(n - 2) 
fib(40)

運(yùn)行時(shí)間
復(fù)制代碼 代碼如下:

$ time ./fib
3.099s
$ time python fib.py
16.655s

可以看到運(yùn)行時(shí)間還是有點(diǎn)差距的,這里的差距大概是5倍左右,現(xiàn)在就介紹Psyco:

Psyco 是 Python 語(yǔ)言的一個(gè)擴(kuò)展模塊,可以即時(shí)對(duì)程序代碼進(jìn)行專(zhuān)業(yè)的算法優(yōu)化,可以在一定程度上提高程序的執(zhí)行速度,尤其是在程序中有大量循環(huán)操作時(shí)。最早被 Armin Rigo 開(kāi)發(fā),后來(lái)由 Christian Tismer 維護(hù)并繼續(xù)完善。

Psyco 可以在 32位元 的 GNU/Linux、BSD、Mac OS X、Microsoft Windows 平臺(tái)上運(yùn)行。Psyco 使用 C語(yǔ)言 編寫(xiě),只針對(duì)32位元平臺(tái)進(jìn)行了編碼。目前開(kāi)發(fā)工作已經(jīng)停止,由 PyPy 所接替,同時(shí) PyPy 也提供針對(duì) 64位元 系統(tǒng)的支持。Psyco 可以在 Python解釋器 編譯代碼時(shí)自動(dòng)優(yōu)化,將其使用C實(shí)現(xiàn),并針對(duì)循環(huán)操作進(jìn)行一些特殊的優(yōu)化。經(jīng)過(guò)這些優(yōu)化,程序的性能將會(huì)得到提升,在跨平臺(tái)環(huán)境下尤為明顯。

安裝Psyco

復(fù)制代碼 代碼如下:

sudo apt-get install python-psyco

或者到官網(wǎng)上下載安裝包,使用easy install安裝即可。

使用Psyco模塊

復(fù)制代碼 代碼如下:

import psyco
psyco.full()
 
def fib(n):
  if n < 2:
     return n
  else:
     return fib(n - 1) + fib(n - 2)
fib(40)

運(yùn)行結(jié)果

復(fù)制代碼 代碼如下:

$ time python fib.py 
3.190s

改善你的代碼

現(xiàn)在將我大部分 Python 代碼加上下列腳本來(lái)利用 Psyco 提升運(yùn)行速度:

復(fù)制代碼 代碼如下:

try: 
    import psyco 
    psyco.full() 
except ImportError: 
    pass # psyco not installed so continue as usual

相關(guān)文章

  • python實(shí)現(xiàn)簡(jiǎn)單的學(xué)生成績(jī)管理系統(tǒng)

    python實(shí)現(xiàn)簡(jiǎn)單的學(xué)生成績(jī)管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡(jiǎn)單的學(xué)生成績(jī)管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • Pandas.DataFrame刪除指定行和列(drop)的實(shí)現(xiàn)

    Pandas.DataFrame刪除指定行和列(drop)的實(shí)現(xiàn)

    本文主要介紹了Pandas.DataFrame刪除指定行和列(drop)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • 詳解Python中的裝飾器、閉包和functools的教程

    詳解Python中的裝飾器、閉包和functools的教程

    這篇文章主要介紹了詳解Python中的裝飾器、閉包和functools的教程,作者還給出了相關(guān)的Flask框架下的應(yīng)用實(shí)例,需要的朋友可以參考下
    2015-04-04
  • Python定時(shí)任務(wù)APScheduler安裝及使用解析

    Python定時(shí)任務(wù)APScheduler安裝及使用解析

    這篇文章主要介紹了Python定時(shí)任務(wù)APScheduler安裝及使用解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Python微信庫(kù):itchat的用法詳解

    Python微信庫(kù):itchat的用法詳解

    本篇文章主要介紹了Python微信庫(kù):itchat的用法詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-08-08
  • python mqtt 客戶(hù)端的實(shí)現(xiàn)代碼實(shí)例

    python mqtt 客戶(hù)端的實(shí)現(xiàn)代碼實(shí)例

    這篇文章主要介紹了python mqtt 客戶(hù)端代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • flask session組件的使用示例

    flask session組件的使用示例

    這篇文章主要介紹了flask session組件的使用示例,詳細(xì)介紹內(nèi)置session以及第三方session組件的使用方法以及處理機(jī)制,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • 詳解Python驗(yàn)證碼識(shí)別

    詳解Python驗(yàn)證碼識(shí)別

    這幾天在寫(xiě)一個(gè)程序的時(shí)候需要識(shí)別驗(yàn)證碼,因?yàn)槌绦蚴荘ython寫(xiě)的自然打算用Python進(jìn)行驗(yàn)證碼的識(shí)別。下面把實(shí)現(xiàn)思路分享在腳本之家平臺(tái),感興趣的朋友可以參考下
    2016-01-01
  • Python一鍵安裝全部依賴(lài)包的方法

    Python一鍵安裝全部依賴(lài)包的方法

    今天小編就為大家分享一篇Python一鍵安裝全部依賴(lài)包的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-08-08
  • Python制作旋轉(zhuǎn)花燈祝大家元宵節(jié)快樂(lè)(實(shí)例代碼)

    Python制作旋轉(zhuǎn)花燈祝大家元宵節(jié)快樂(lè)(實(shí)例代碼)

    一年一度的元宵節(jié)來(lái)臨,小編在這里祝大家2022元宵節(jié)快樂(lè),今天小編給大家分享一篇教程關(guān)于Python制作旋轉(zhuǎn)花燈祝大家元宵節(jié)快樂(lè),代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2022-02-02

最新評(píng)論