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

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

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

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

C語言程序

復(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寫的
復(fù)制代碼 代碼如下:

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

運行時間
復(fù)制代碼 代碼如下:

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

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

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

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

運行結(jié)果

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

$ time python fib.py 
3.190s

改善你的代碼

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

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

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

相關(guān)文章

  • python使用numpy生成18種特殊數(shù)組

    python使用numpy生成18種特殊數(shù)組

    這篇文章主要介紹了python使用numpy生成18種特殊數(shù)組的方法,文章通過代碼示例介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的參考價值,需要的朋友可以參考下
    2023-09-09
  • Python實現(xiàn)斐波那契數(shù)列的多種寫法總結(jié)

    Python實現(xiàn)斐波那契數(shù)列的多種寫法總結(jié)

    這篇文章主要給大家介紹了利用Python實現(xiàn)斐波那契數(shù)列的幾種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • 利用Python通過商品條形碼查詢商品信息的實現(xiàn)示例

    利用Python通過商品條形碼查詢商品信息的實現(xiàn)示例

    這篇文章主要介紹了利用Python通過商品條形碼查詢商品信息,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Python?Pandas中append方法舉例詳解

    Python?Pandas中append方法舉例詳解

    這篇文章主要給大家介紹了關(guān)于Python?Pandas中append方法的相關(guān)資料,在Pandas中append()方法用于將一個或多個DataFrame或Series添加到DataFrame中,需要的朋友可以參考下
    2023-12-12
  • Python依賴管理及打包工具Poetry使用規(guī)范

    Python依賴管理及打包工具Poetry使用規(guī)范

    這篇文章主要為大家介紹了Python依賴管理及打包工具Poetry的依賴規(guī)范,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-09-09
  • 樸素貝葉斯Python實例及解析

    樸素貝葉斯Python實例及解析

    這篇文章主要為大家詳細(xì)介紹了樸素貝葉斯Python算法實現(xiàn),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • el-table 多表格彈窗嵌套數(shù)據(jù)顯示異常錯亂問題解決方案

    el-table 多表格彈窗嵌套數(shù)據(jù)顯示異常錯亂問題解決方案

    使用vue+element開發(fā)報表功能時,需要列表上某列的超鏈接按鈕彈窗展示,在彈窗的el-table列表某列中再次使用超鏈接按鈕點開彈窗,以此類推多表格彈窗嵌套,本文以彈窗兩次為例,需要的朋友可以參考下
    2023-11-11
  • 用Python寫一個球球大作戰(zhàn)小游戲

    用Python寫一個球球大作戰(zhàn)小游戲

    這篇文章主要介紹了如何用Python寫一個球球大作戰(zhàn)小游戲,我們需要實現(xiàn)每位玩家操控一個可自由移動的小球球,通過滑動屏幕,你可以指揮自己的球球在地圖上四處游走,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • Anaconda+vscode+pytorch環(huán)境搭建過程詳解

    Anaconda+vscode+pytorch環(huán)境搭建過程詳解

    這篇文章主要介紹了Anaconda+vscode+pytorch環(huán)境搭建過程詳解,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • python 字符串常用函數(shù)詳解

    python 字符串常用函數(shù)詳解

    這篇文章主要介紹了python 字符串常用函數(shù),本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09

最新評論

若尔盖县| 广平县| 清河县| 武鸣县| 新营市| 建德市| 裕民县| 镇远县| 寿宁县| 茶陵县| 景德镇市| 静乐县| 阿鲁科尔沁旗| 宣武区| 察哈| 津南区| 青铜峡市| 谢通门县| 贵州省| 静乐县| 墨玉县| 敦化市| 柳林县| 盐亭县| 犍为县| 信阳市| 贡嘎县| 思茅市| 石棉县| 海城市| 福贡县| 林甸县| 靖安县| 剑河县| 万源市| 汶川县| 安康市| 特克斯县| 钦州市| 林甸县| 宽甸|