David Mabodo
David Mabodo

Reputation: 755

iPython notebook avoid printing within a function

I want to prevent a function to print in iPython notebook.

In standard python one can prevent printing some lines of code as answered in the question: To prevent a function from printing in the batch console in Python However this method do not work in iPython notebook, losing the output until a restart of the Kernel.

The most similar feature I found is to avoid a full cell to display using the magic function:

%%capture capt

However this magic function blocks the whole cell, is there any way in iPython notebook to avoid printing just some of the lines within the code?

Upvotes: 6

Views: 5280

Answers (1)

unutbu
unutbu

Reputation: 879421

You could use io.capture_output:

from IPython.utils import io

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

to capture stdout and stderr for only those lines within the with-statement.

Upvotes: 13

Related Questions