python List 和Numpy array 區別


  • 一個numpy array 是內存中一個連續塊,並且array里的元素都是同一類(例如整數)。所以一旦確定了一個array,它的內存就確定了,那么每個元素(整數)的內存大小都確定了(4 bytes)。

     list完全不同,它的每個元素其實是一個地址的引用,這個地址又指向了另一個元素,這些元素的在內存里不一定是連續的。所以list其實是只              能塞進地址的“數組”,而且由於地址不用連續,每當我想加入新元素,我只用把這個元素的地址添加進list。

  • list中的數據類不必相同的,而array的中的類型必須全部相同。(在list中的數據類型保存的是數據的存放的地址,簡單的說就是指針,並非數據,這樣保存一個list就太麻煩了,例如list1=[1,2,3,'a']需要4個指針和四個數據,增加了存儲和消耗cpu。)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM