pythonjupyter-notebookjupytersympypretty-print

How to pretty print in ipython notebook via sympy?


I tried pprint, print, the former only prints Unicode version, and the latter doesn't do pretty prints.

from sympy import symbols, Function
import sympy.functions as sym
from sympy import init_printing
init_printing(use_latex=True)
from sympy import pprint
from sympy import Symbol

x = Symbol('x')

# If a cell contains only the following, it will render perfectly.
(pi + x)**2

# However I would like to control what to print in a function, 
# so that multiple expressions can be printed from a single notebook cell.
pprint((pi + x)**2)

Solution

  • you need to use display:

    from IPython.display import display
    
    display(yourobject)
    

    It will choose the appropriate representation (text/LaTex/png...), in recent enough version of IPython (6.0+) display is imported by default, still we recommend to explicitly import it.