首頁人工智能常見問題正文

numpy array和python list相比有什么優(yōu)勢?

更新時間:2020-09-25 來源:黑馬程序員 瀏覽量:

1601015119383_numpy-array.jpg


從圖中我們可以看出ndarray在存儲數(shù)據(jù)的時候,數(shù)據(jù)與數(shù)據(jù)的地址都是連續(xù)的,這樣就給使得批量操作數(shù)組元素時速度更快。

這是因為ndarray中的所有元素的類型都是相同的,而Python列表中的元素類型是任意的,所以ndarray在存儲元素時內(nèi)存可以連續(xù),而python原生list就只能通過尋址方式找到下一個元素,這雖然也導(dǎo)致了在通用性能方面Numpy的ndarray不及Python原生list,但在科學(xué)計算中,Numpy的ndarray就可以省掉很多循環(huán)語句,代碼使用方面比Python原生list簡單的多。

·ndarray支持并行化運算(向量化運算)

·效率遠(yuǎn)高于純Python代碼

Numpy底層使用C語言編寫,內(nèi)部解除了GIL(全局解釋器鎖),其對數(shù)組的操作速度不受Python解釋器的限制,所以,其效率遠(yuǎn)高于純Python代碼。


猜你喜歡

如何理解HOG特征?

圖像的角點是什么?

SIFT/SUR的特征提取方法是如何保持尺度不變性的?

為什么要學(xué)習(xí)人工智能?


下面是黑馬程序員公開的幾套人工智能視頻教程,如果感興趣可以下載學(xué)習(xí)。






分享到:
在線咨詢 我要報名
和我們在線交談!