更新時間:2020-09-25 來源:黑馬程序員 瀏覽量:
從圖中我們可以看出ndarray在存儲數(shù)據(jù)的時候,數(shù)據(jù)與數(shù)據(jù)的地址都是連續(xù)的,這樣就給使得批量操作數(shù)組元素時速度更快。
這是因為ndarray中的所有元素的類型都是相同的,而Python列表中的元素類型是任意的,所以ndarray在存儲元素時內(nèi)存可以連續(xù),而python原生list就只能通過尋址方式找到下一個元素,這雖然也導致了在通用性能方面Numpy的ndarray不及Python原生list,但在科學計算中,Numpy的ndarray就可以省掉很多循環(huán)語句,代碼使用方面比Python原生list簡單的多。
·ndarray支持并行化運算(向量化運算)
·效率遠高于純Python代碼
Numpy底層使用C語言編寫,內(nèi)部解除了GIL(全局解釋器鎖),其對數(shù)組的操作速度不受Python解釋器的限制,所以,其效率遠高于純Python代碼。
猜你喜歡
下面是黑馬程序員公開的幾套人工智能視頻教程,如果感興趣可以下載學習。