【问题标题】:The difference between np.function and function [duplicate]np.function和function之间的区别[重复]
【发布时间】:2018-06-20 03:23:22
【问题描述】:

我们可以导入numpy并直接使用它的功能:

from numpy import *

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

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

import numpy as np

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

【问题讨论】:

标签: python numpy


【解决方案1】:

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

但是,您不应该使用from any_module import * 的原因之一是:它可能只是覆盖现有名称。例如 NumPy 有自己的 anymaxallmin 函数,它们会很高兴地隐藏 Python 内置的 anymax、...函数(非常 常见的“陷阱”)。

我的建议:避免使用from numpy import *,即使它看起来比一直输入np. 更省力!

【讨论】:

    【解决方案2】:

    这是一个整洁和一致性的问题:你可能有来自不同模块的多个同名函数(例如,在 Numpy 中有一个名为“random”的函数,但在 SciPy 等其他包中也有),所以重要的是要表示您正在使用哪个确切模块中的哪个确切功能。 This link 有很好的解释,并指出代码的可读性。

    【讨论】:

      猜你喜欢
      • 2012-02-13
      • 1970-01-01
      • 2012-03-12
      • 2011-05-17
      • 2011-04-16
      • 1970-01-01
      • 1970-01-01
      • 2010-09-30
      • 1970-01-01
      相关资源
      最近更新 更多