np.function和function之间的区别

时间:2018-01-10 21:15:29

标签: python numpy

我们可以导入numpy并直接使用它的函数:

from numpy import *

a = arraay([1,2,3]) # and it works well.

为什么有些人会使用以下方法?

import numpy as np

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

2 个答案:

答案 0 :(得分:4)

区别很简单:from numpy import *将顶级NumPy模块中的所有名称导入到当前的“模块”(命名空间)中。如果您使用import numpy as npnp.xxx将只提供顶级NumPy模块。

但是,有一个原因是您不应该使用from any_module import *:它可能只是覆盖现有名称。例如,NumPy有自己的anymaxallmin函数,它们会很好地影响内置Python any,{{1} },...函数(一个非常常见的“陷阱”)。

我的建议:避免使用max,即使看起来不像点击from numpy import *那么费力!

答案 1 :(得分:1)

这是一个整洁而且一致的问题:你可能有不同模块中具有相同名称的多个函数(例如,在Numpy中有一个名为“random”的函数,但在SciPy等其他软件包中也是如此)所以表示它很重要您正在使用哪个确切的模块。 This link有一个很好的解释,并且也提到了代码可读性。