中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
Python運(yùn)行速度居然追上了C語(yǔ)言?那么Python太完美了!簡(jiǎn)直無(wú)敵

IT行業(yè)里面,很多門外漢應(yīng)該也都知道,就是運(yùn)行速度最快的是C,運(yùn)行很慢的是Python。其實(shí)這都不是事,Python運(yùn)行慢,但是代碼量非常少。幾十行代碼就能做到C幾百行才能做到的東西。當(dāng)然小編這里并沒(méi)有瞧不起C,C乃是語(yǔ)言中的祖母,只是相對(duì)來(lái)講打個(gè)比方,今天這個(gè)小伙子厲害了,他居然運(yùn)行Python和C一樣快,直接驚呆了!咱們接下來(lái)看下!

如何使用Cython

下面的代碼來(lái)自Cython文檔:

def f(x): return x**2-xdef integrate_f(a, b, N): s = 0 dx = (b-a)/N for i in range(N): s += f(a+i*dx) return s * dx

這是一個(gè)例子,一個(gè)不完整的函數(shù)的實(shí)現(xiàn)。作為純Python代碼,速度很慢,因?yàn)镻ython必須在機(jī)器本機(jī)數(shù)字類型和其內(nèi)部對(duì)象類型之間來(lái)回轉(zhuǎn)換。

現(xiàn)在考慮相同代碼的Cython版本,并強(qiáng)調(diào)Cython的增加:

cdef double f(double x): return x**2-xdef integrate_f(double a, double b, int N): cdef int i cdef double s, x, dx s = 0 dx = (b-a)/N for i in range(N): s += f(a+i*dx) return s * dx

如果我們顯式聲明變量類型,無(wú)論是函數(shù)參數(shù)還是函數(shù)體(double,int等)中使用的變量,Cython都會(huì)將所有這些轉(zhuǎn)換成C語(yǔ)言。我們也可以使用cdef關(guān)鍵字來(lái)定義 盡管這些函數(shù)只能被其他的Cython函數(shù)調(diào)用,而不能被Python腳本調(diào)用,但是這些函數(shù)主要是用C實(shí)現(xiàn)的。

Cython分析和性能

可以通過(guò)分析代碼并親眼目睹瓶頸在哪里獲得最佳性能。Cython為Python的cProfile模塊提供鉤子,因此可以使用Python自己的分析工具來(lái)查看Cython代碼的執(zhí)行情況。無(wú)需在工具組之間切換;可以繼續(xù)所熟悉和喜愛(ài)的Python世界中工作。

它有助于記住所有情況下,Cython不是魔術(shù),仍然適用明智的現(xiàn)實(shí)世界的表現(xiàn)實(shí)踐。在Python和Cython之間來(lái)回穿梭越少,你的應(yīng)用運(yùn)行得越快。

謝謝閱讀,元方你怎么看?

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Cython學(xué)習(xí)
Python、C、C 擴(kuò)展、Cython 差異對(duì)比
Cython應(yīng)用手記
C 一級(jí)的構(gòu)造函數(shù)和析構(gòu)函數(shù)
你試過(guò)C語(yǔ)言和Python一起混合編程嗎??jī)烧呦嗉硬皇且呀?jīng)無(wú)敵了!
快 100 倍,Python 為自然語(yǔ)言處理加速度!
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服