在Ipython中运行Python脚本时是否必须指定导入?

时间:2015-01-22 21:53:00

标签: numpy matplotlib import ipython

我正在编写一个脚本,我知道我将在Ipython中运行。

我以ipython开始Ipython --pylab。

导入numpy,matplotlib等

所以我必须在我的脚本中再次指定这些import语句吗?

我没有,我的剧本没有运行。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

--pylab导入numpy *np。我总是使用np.来减少混淆。

如果我的脚本中需要numpy,我会添加常用的import numpy as np行。这让我可以从shell运行脚本。我也可以在run ...内使用IPython运行它。我也可以在Ipython或其他一些脚本中做import

我从未尝试省略import numpy行,我认为没有必要开始。它不会节省任何时间或空间。养成输入所需内容的习惯,不要认为环境会为你做。

您在IPython中定义和编辑的函数不需要自己的import语句。


刚试过这个剧本:

def foo1(x):
   return np.sum(x)

def foo2(x):
   return x.sum()

显然我可以用'run'加载它。并且foo2(np.array([1,2,3]))有效,因为数组使用自己的方法。但foo1会生成NameError: global name 'np' is not defined