提问者:小点点

Numpy能代替List吗?


很基本的问题。 Numpy比list更快,而且比list做得更多。

我可以创建一个列表

A = [1,2,3,4]

而且我也可以和Numpy做类似的事情。

B = np.array([1,2,3,4])

如果NumPy可以做list所能做的一切,那么使用list有什么具体的原因吗?


共2个答案

匿名用户

当涉及到附加和删除项时,列表通常更有能力。 列表也不是类型化的,而numpy数组是类型化的。 您可以向列表中添加任何对象,但只能向numpy数组添加某种类型的值。

Numpy阵列被优化用于数值矩阵计算。 它们服务于不同的目的。 如果您希望简单地对向量类对象进行数学运算,那么numpy是一种可行的方法。 如果您需要存储不同类型和数量的信息,列表会更好,而且在许多情况下更有效率。

匿名用户

如果要将各种数据类型放入数据容器中,则应使用List。 数组可以存储一种类型的数据。 和数组一般适用于算术运算。 虽然您可以使用列表进行算术计算,但数组对于这些任务来说是非常友好的。 例如:

如果你有一个数字列表,你想做一些基本的数学运算,就像这样:

x=[2,4,6,8,10]
print(x/2)

这将抛出一个错误,如“不支持的操作数for List”

使用数组这样做将成功地吐出预期的输出。