2014-05-16 15 views
36

Wie kann die Ausgabe auf stdout unterdrückt werden?Wie unterdrücken Sie die Ausgabe in IPython Notebook?

Ein Semikolon kann Anzeige der zurückgegebenen Objekte zu unterdrücken verwendet werden, zum Beispiel

>>> 1+1 
2 

>>> 1+1; # No output! 

eine Funktion jedoch, die auf die Standardausgabe druckt nicht durch das Semikolon betroffen.

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

>>> MyFunction() 
Calculating values... 

Wie kann die Ausgabe von print/MyFunction unterdrückt werden?

+0

für Iruby Kernel einfach "Nil" als letzte Zeile hinzufügen – frenesim

Antwort

52

Fügen Sie %%capture als erste Zeile der Zelle hinzu.

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

Dies verwirft einfach die Ausgabe, aber die %%capture Magie kann verwendet werden, um die Ausgabe in eine Variable zu speichern - consult the docs

+1

Wer weiß, was das Gegenteil von %% capture ist? Wie in, wie stoppen Sie %% Capture innerhalb einer Zelle oder ist es bis zum Ende der Zelle aktiviert? –

+0

Gut zu wissen ist, dass '%% capture' nur bis zum Ende der Zelle aktiviert ist und vor jedem Code in der Zelle erscheinen muss. (So ​​scheint es, gibt es keinen Weg, in einer Zelle zu entfangen.) – Arel

15

Suppress Ausgang

Setzen Sie ein ; am Ende einer Zeile unterdrücken Sie das Drucken der Ausgabe [Reference].