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

基于Numba提高python運(yùn)行效率過程解析

 更新時(shí)間:2020年03月02日 12:25:08   作者:pfeiliu  
這篇文章主要介紹了基于Numba提高python運(yùn)行效率過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

Numba是Python的即時(shí)編譯器,在使用NumPy數(shù)組和函數(shù)以及循環(huán)的代碼上效果最佳。使用Numba的最常見方法是通過其裝飾器集合,這些裝飾器可應(yīng)用于您的函數(shù)以指示Numba對(duì)其進(jìn)行編譯。調(diào)用Numba裝飾函數(shù)時(shí),它會(huì)被“即時(shí)”編譯為機(jī)器代碼以執(zhí)行,并且您的全部或部分代碼隨后可以本機(jī)機(jī)器速度運(yùn)行!

安裝numba(我在這里加了--default-timeout=10000,防止安裝時(shí)出現(xiàn)timeout的錯(cuò)誤)

pip --default-timeout=10000 install -U numba
from numba import jit
import time
def add(x):
  he=0
  for i in range(x):
    he+=i
  return he
start=time.time()
res=add(100000000)
print(res)
end=time.time()
print(end-start)
耗時(shí)5s
4999999950000000
5.707650184631348

使用Numba的JIT裝飾器@jit,以嘗試加快某些功能的運(yùn)行速度

from numba import jit
import time
@jit
def add(x):
  he=0
  for i in range(x):
    he+=i
  return he
start=time.time()
res=add(100000000)
print(res)
end=time.time()
print(end-start)
耗時(shí)0.14s,快了近40倍
4999999950000000
0.14488554000854492

看吧,快了40倍!

numba僅對(duì)numpy,for和while循環(huán)有效!

參考numba官網(wǎng):http://numba.pydata.org/numba-doc/latest/developer/inlining.html#example-using-numba-jit

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python語言描述機(jī)器學(xué)習(xí)之Logistic回歸算法

    Python語言描述機(jī)器學(xué)習(xí)之Logistic回歸算法

    這篇文章主要介紹了Python語言描述機(jī)器學(xué)習(xí)之Logistic回歸算法,涉及Sigmoid函數(shù),梯度上升法等相關(guān)內(nèi)容,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-12-12
  • django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t exist”)問題的解決

    django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t e

    這篇文章主要給大家介紹了關(guān)于執(zhí)行python manage.py migrate時(shí)報(bào)錯(cuò):django.db.utils.ProgrammingError: (1146, "Table 'test.model_student' doesn't exist" )問題的解決方法,文中將解決的方法介紹的非常詳細(xì),需要的朋友可以參考下
    2018-07-07
  • pycharm: 恢復(fù)(reset) 誤刪文件的方法

    pycharm: 恢復(fù)(reset) 誤刪文件的方法

    今天小編就為大家分享一篇pycharm: 恢復(fù)(reset) 誤刪文件的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • 利用python控制Qt程序的示例詳解

    利用python控制Qt程序的示例詳解

    這篇文章主要為大家詳細(xì)介紹了如何利用python實(shí)現(xiàn)控制Qt程序,從而進(jìn)行文本輸入,按鈕點(diǎn)擊等組件控制,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-08-08
  • Python常見MongoDB數(shù)據(jù)庫(kù)操作實(shí)例總結(jié)

    Python常見MongoDB數(shù)據(jù)庫(kù)操作實(shí)例總結(jié)

    這篇文章主要介紹了Python常見MongoDB數(shù)據(jù)庫(kù)操作,結(jié)合實(shí)例形式詳細(xì)總結(jié)了Python針對(duì)MongoDB數(shù)據(jù)庫(kù)相關(guān)pymongo庫(kù)安裝以及MongoDB數(shù)據(jù)庫(kù)的增刪改查等相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下
    2018-07-07
  • Python抓包并解析json爬蟲的完整實(shí)例代碼

    Python抓包并解析json爬蟲的完整實(shí)例代碼

    這篇文章主要給大家介紹了關(guān)于Python抓包并解析json爬蟲的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • 基于本地知識(shí)的問答機(jī)器人langchain-ChatGLM 大語言模型實(shí)現(xiàn)方法詳解

    基于本地知識(shí)的問答機(jī)器人langchain-ChatGLM 大語言模型實(shí)現(xiàn)方法詳解

    這篇文章主要介紹了基于本地知識(shí)的問答機(jī)器人langchain-ChatGLM 大語言模型實(shí)現(xiàn)方法,結(jié)合具體實(shí)例形式詳細(xì)分析了langchain-ChatGLM的功能、原理、部署方法與操作注意事項(xiàng),需要的朋友可以參考下
    2023-07-07
  • Python中np.where()的使用方式

    Python中np.where()的使用方式

    這篇文章主要介紹了Python中np.where()的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Pandas中的空字符串(非缺失值)處理方式

    Pandas中的空字符串(非缺失值)處理方式

    這篇文章主要介紹了Pandas中的空字符串(非缺失值)處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • python中溫度單位轉(zhuǎn)換的實(shí)例方法

    python中溫度單位轉(zhuǎn)換的實(shí)例方法

    在本篇文章里小編給大家整理關(guān)于python中溫度單位轉(zhuǎn)換的實(shí)例方法,有需要的朋友們可以學(xué)習(xí)參考下。
    2020-12-12

最新評(píng)論