如何在 Jupyter 运行 IPython 来抑制输出?

如何抑制输出到 stdout

例如,可以使用分号来禁止显示返回的对象

>>> 1+1
2


>>> 1+1;   # No output!

但是,打印到 stdout 的函数不受分号的影响。

>>> print('Hello!')
Hello!


>>> MyFunction()
Calculating values...

如何抑制 print/MyFunction的输出?

144092 次浏览

在单元格的第一行添加 %%capture

%%capture
print('Hello')
MyFunction()

这只是丢弃了输出,但是可以使用 %%capture魔法将输出保存到一个变量 -请教一下医生

抑制输出

在一行的末尾放置一个 ;来抑制输出的打印[ 参考文献]。

一个好的实践是始终从函数返回值,而不是在函数内部打印值。在这种情况下,您可以使用该控件; 如果希望打印返回的值,则可以使用该控件; 否则,不会仅通过在函数调用后添加; 来打印该值。

(来源: https://stackoverflow.com/a/23611571/389812)

你可以使用 Catch _ output:

from IPython.utils import io


with io.capture_output() as captured:
MyFunction()

with-statement中的那些行禁止(例如捕获) stdout 和 stderr。

如果有人有兴趣清理所有产出:

  1. 转到 手机
  2. 转到 所有输出

然后选择你喜欢的选项。