从IPython

时间:2015-12-18 20:50:50

标签: ipython ipython-notebook

我对NumPy / SciPy和IPython相对较新。

要在python交互模式下执行python脚本,我们可以使用以下命令。

>>> import os
>>> os.system('executable.py')

然后可以从python提示符中看到打印输出。

但同样的想法不适用于IPython笔记本。

In [64]:

import os
os.system('executable.py')

Out[64]:
0

在这种情况下,我看不到任何打印输出。笔记本只告诉天气执行成功与否。使用IPython笔记本时有没有办法看到输出?

1 个答案:

答案 0 :(得分:2)

使用魔术功能%run

%run executable.py

这会将stdout正确地重定向到浏览器,您将看到笔记本中程序的输出。

如果存在异常,它将为您提供从命令行运行的典型功能以及Python回溯。

  

文件名后的参数作为命令行参数传递给       程序(放入sys.argv)。然后,控制返回到IPython的       提示。

     

这类似于在系统提示符python file args上运行,       但具有为您提供IPython的追溯的优势       将所有变量加载到交互式命名空间中以供进一步使       (除非使用-p,见下文)。

选项-t倍于您的脚本。使用-d,它在调试器pdb中运行。更好的选择。