亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

采用Psyco實(shí)現(xiàn)python執(zhí)行速度提高到與編譯語(yǔ)言一樣的水平

 更新時(shí)間:2014年10月11日 12:13:01   投稿:shichen2014  
這篇文章主要介紹了采用Psyco實(shí)現(xiàn)python執(zhí)行速度提高到與編譯語(yǔ)言一樣的水平的方法,是非常實(shí)用的Python第三方庫(kù),需要的朋友可以參考下

本文實(shí)例講述了采用Psyco實(shí)現(xiàn)python執(zhí)行速度提高到與編譯語(yǔ)言一樣的水平的方法,分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:

一、安裝Psyco很簡(jiǎn)單,它有兩種安裝方式,一種是源碼方式,一種是二進(jìn)制碼方式:

如果用源碼方式安裝,你需在源碼的目錄中調(diào)用python setup.py install命令編譯生成psyco子目錄,再把該子目錄整個(gè)拷貝到python的site-packages目錄下。

如果用二進(jìn)制碼方式安裝,按這個(gè)網(wǎng)址列表中的python與psyco版本對(duì)應(yīng)表下載合適的二進(jìn)制文件,解壓后會(huì)生成一個(gè)psyco-1.x的目錄,把該目錄下的psyco目錄整個(gè)拷貝到python的site-packages目錄下即可。

二、使用說(shuō)明,在需要做效率優(yōu)化的源文件前面加入以下兩句:

復(fù)制代碼 代碼如下:
import psyco
psyco.full()

另外,使用psyco.profile()可以對(duì)大程序進(jìn)行適當(dāng)分析,以確定哪些函數(shù)最值得編譯。
psyco.log()函數(shù)用來(lái)記錄profile()得到的信息,下次就可以運(yùn)行就能更快一點(diǎn)。
psyco.bind(myfunc)指定對(duì)函數(shù)myfunc進(jìn)行編譯,可以做到比f(wàn)ull()更精細(xì)的控制。
psyco.proxy(f)創(chuàng)建一個(gè)新的函數(shù),它的代碼是由f編譯得到二進(jìn)制碼

三、例子:
psyco_test.py文件代碼如下:

復(fù)制代碼 代碼如下:
#!/usr/bin/python
# Filename:psyco_test.py
 
import math, timeit, psyco
 
def TestA():
    res, loopcnt = 0.0, 100
    for i in range(loopcnt):
        for j in range(loopcnt):
            for k in range(loopcnt):
                res = res + math.sin(i + j + k)
 
if __name__ == '__main__':
    TestB = psyco.proxy(TestA)
    ta = timeit.Timer("TestA()", "from __main__ import TestA")
    tb = timeit.Timer("TestB()", "from __main__ import TestB")
    print ("TestA(): %.2fs" % (ta.timeit(10)))
    print ("TestB(): %.2fs" % (tb.timeit(10)))

運(yùn)行結(jié)果如下:

復(fù)制代碼 代碼如下:
jobin@jobin-desktop:~/work/python/psyco$ python psyco_test.py
TestA(): 4.41s
TestB(): 1.63s

使用psyco處理過(guò)的函數(shù)執(zhí)行速度快了4倍左右, 跟作者宣稱的差不多。

希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • python使用marshal模塊序列化實(shí)例

    python使用marshal模塊序列化實(shí)例

    這篇文章主要介紹了python使用marshal模塊序列化的方法,是非常實(shí)用的技巧,需要的朋友可以參考下
    2014-09-09
  • 教你使用Psycopg2連接openGauss的方法

    教你使用Psycopg2連接openGauss的方法

    Psycopg是一種用于執(zhí)行SQL語(yǔ)句的PythonAPI,可以為PostgreSQL、openGauss數(shù)據(jù)庫(kù)提供統(tǒng)一訪問(wèn)接口,應(yīng)用程序可基于它進(jìn)行數(shù)據(jù)操作,這篇文章主要介紹了教你使用Psycopg2連接openGauss的方法,需要的朋友可以參考下
    2022-11-11
  • Python打開指定網(wǎng)頁(yè)使用requests模塊爬蟲示例詳解

    Python打開指定網(wǎng)頁(yè)使用requests模塊爬蟲示例詳解

    這篇文章主要介紹了Python打開指定網(wǎng)頁(yè)使用requests模塊爬蟲的示例,Python?requests是一個(gè)常用的HTTP請(qǐng)求庫(kù),可以方便地向網(wǎng)站發(fā)送HTTP請(qǐng)求,并獲取響應(yīng)結(jié)果,requests模塊比urllib模塊更簡(jiǎn)潔,感興趣的朋友可以參考下
    2024-02-02
  • python人工智能TensorFlow自定義層及模型保存

    python人工智能TensorFlow自定義層及模型保存

    這篇文章主要為大家介紹了python人工智能TensorFlow自定義層及模型保存示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-11-11
  • 利用python將?Matplotlib?可視化插入到?Excel表格中

    利用python將?Matplotlib?可視化插入到?Excel表格中

    這篇文章主要介紹了利用python將?Matplotlib?可視化?插入到?Excel?表格中,通過(guò)使用xlwings模塊來(lái)控制Excel插入圖表,具體詳細(xì)需要的朋友可以參考下面文章內(nèi)容
    2022-06-06
  • python turtle繪圖命令及案例

    python turtle繪圖命令及案例

    這篇文章主要給大家分享的是python turtle繪圖命令及案例,繪圖有很多命令,可以劃分為三種:畫筆運(yùn)動(dòng)命令、畫筆控制命令、全局控制命令,下面來(lái)看看文章的詳細(xì)內(nèi)容吧,需要的朋友可以參考一下
    2021-11-11
  • python皮爾遜相關(guān)性數(shù)據(jù)分析分析及實(shí)例代碼

    python皮爾遜相關(guān)性數(shù)據(jù)分析分析及實(shí)例代碼

    這篇文章主要為大家介紹了python皮爾遜相關(guān)性分析及實(shí)例代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • python代碼有一行標(biāo)黃問(wèn)題的解決方案

    python代碼有一行標(biāo)黃問(wèn)題的解決方案

    這篇文章主要介紹了python代碼有一行標(biāo)黃問(wèn)題的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Python如何將CSV文件轉(zhuǎn)JSON文件

    Python如何將CSV文件轉(zhuǎn)JSON文件

    這篇文章主要給大家介紹了關(guān)于Python如何將CSV文件轉(zhuǎn)JSON文件的相關(guān)資料,可以使用Python內(nèi)置的csv和json模塊來(lái)實(shí)現(xiàn)將csv文件轉(zhuǎn)為json的操作,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • python global的創(chuàng)建和修改實(shí)例講解

    python global的創(chuàng)建和修改實(shí)例講解

    在本篇文章里小編給大家整理了一篇關(guān)于python global的創(chuàng)建和修改實(shí)例講解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-09-09

最新評(píng)論