我正在编写一个脚本,我知道我将在Ipython中运行。
我以ipython开始Ipython --pylab。
导入numpy,matplotlib等
所以我必须在我的脚本中再次指定这些import语句吗?
我没有,我的剧本没有运行。
感谢您的帮助。
答案 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
。