从ipython中的目录运行脚本

时间:2014-01-17 21:39:05

标签: python scripting path ipython

我对这一切都很新,所以请尽量忍受我。 我有一个目录设置,我转储所有正在处理的脚本, 我正在努力使它能够直接从ipython中运行该目录中的脚本。 到目前为止,我已经将 init .py添加到上述目录中, 并尝试将路径附加到sys.path, 但是,即使在我成功附加路径后,尝试对目录中的任何脚本使用run命令也会导致找不到错误。 我遇到的另一个问题是,每次内核重置后,sys.path似乎都会重置为之前的值,而不会输入新的路径设置。 感谢任何帮助, 罗恩

3 个答案:

答案 0 :(得分:1)

如果你只想从目录中运行带有ipython的脚本,可以将ipython放入shebang并将目录添加到路径中,如下所示:

脚本就像这样(python3示例):

#!/usr/bin/ipython

print("HI from ipython")

然后你将脚本所在的目录添加到PATH环境变量中(如果你使用的是Linux或其他* NIX):

export PATH="/home/ron/ipython_scripts:$PATH"

现在,你应该让它们可执行:

chmod +x /home/ron/ipython_scripts/script.py

现在你可以在任何地方使用脚本:)

$ script.py
HI from ipython

答案 1 :(得分:0)

sys.path仅影响导入,而不影响IPython的%run。运行魔法就像调用python script.py一样 - 你必须进入脚本所在的目录,或者传递这些脚本的完整路径。

答案 2 :(得分:-1)

在Ipython笔记本中输入:%run script_name.py