How can output to stdout
be suppressed?
A semi-colon can be used to supress display of returned objects, for example
>>> 1+1
2
>>> 1+1; # No output!
However, a function that prints to stdout is not affected by the semi-colon.
>>> print('Hello!')
Hello!
>>> MyFunction()
Calculating values...
How can the output from print
/ MyFunction
be suppressed?
Add %%capture
as the first line of the cell. eg
%%capture
print('Hello')
MyFunction()
This simply discards the output, but the %%capture
magic can be used to save the output to a variable - consult the docs
;
at the end of a line to suppress the printing of output [ Reference ].A good practice is to always return values from functions rather than printing values inside a function. In that case, you have the control; if you want to print the returned value, you can; otherwise, it will not be printed just by adding a ; after the function call.
(credit: https://stackoverflow.com/a/23611571/389812 )
You could use io.capture_output :
from IPython.utils import io
with io.capture_output() as captured:
MyFunction()
to supress (eg capture) stdout and stderr for those lines within the with-statement
.
If anyone is interested in clearing all outputs:
Then choose whichever option you like.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.