为什么我们在Python中使用NumPy数组而不是列表?它们之间的主要区别是什么?
Numpy数组是一种有类型的数组,内存中的数组存储着同质且密集排列的数字。
Python列表是一个异构列表,内存中的列表存储着对对象的引用而不是数字本身。
这意味着每次代码需要访问数字时,Python列表需要对指针进行解引用。而Numpy数组可以直接通过Numpy向量操作进行处理,使得这些向量操作比使用列表编码的任何操作都要快得多。
Numpy数组的缺点是,如果需要访问数组中的单个项目,Numpy将需要将数字打包/拆包成Python数字对象,这可能会在某些情况下变慢;并且它不能容纳异构数据。
list
(例如[1, 2, 3]
是 list 而不是 array)?请说明。 - Antti Haapala -- Слава Україні