你如何抑制IPython Notebook中的输出?

时间:2014-05-16 05:01:38

标签: ipython-notebook

如何抑制输出到stdout

分号可用于抑制返回对象的显示,例如

>>> 1+1
2

>>> 1+1;   # No output!

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

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

>>> MyFunction()
Calculating values...

如何抑制print / MyFunction的输出?

4 个答案:

答案 0 :(得分:106)

添加%%capture作为单元格的第一行。例如

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

这只是丢弃输出,但可以使用%%capture魔法将输出保存到变量 - consult the docs

答案 1 :(得分:57)

抑制输出

在行尾添加function reformatDate(s) { var b = s.split(';'); var t = b[1].split(':'); var h = +t[0]; h = h%12 + (/pm/i.test(b[2])? 12 : 0); return b[0] + ' ' + h + ':' + t[1] + ':' + t[2]; } console.log(reformatDate('20/4/2016;4:23:00;PM')); // 20/4/2016 16:23:00以禁止打印输出[Reference]。

答案 2 :(得分:3)

(信用:https://stackoverflow.com/a/23611571/389812

您可以使用io.capture_output

from IPython.utils import io

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

with-statement中的这些行抑制(例如捕获)stdout和stderr。

答案 3 :(得分:-2)

如果有人有兴趣清除所有输出:

  1. 转到单元格
  2. 转到所有输出

然后选择您喜欢的选项。