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