Spyder SymPy Wont Print Symbolic Math
Question: I setup Anaconda 2.0.0 (Win 64). It has SymPy 0.7.5.

I configured Spyder (2.3.0rc that came with Anaconda) to use symbolic math:

_Tools > Preferences > iPython console > Advanced Settings > Symbolic
Mathematics_

I create a new project and a new file:

    
    
    # -*- coding: utf-8 -*-
    from sympy import *
    init_printing(use_unicode=False, wrap_line=False, no_global=True)
    
    x = Symbol('x')
    integrate(x, x)
    
    print("Completed.")
    

When I run this (Python or iPython console) it does not print the integral --
it only prints _Completed._

But what is weird is that while in the console that just did the run if I then
re-type:

    
    
    integrate(x, x)
    

It does print the integral.

So running from a file never prints any symbolic math but typing in the
console manually does?

Can anyone help with this issue -- maybe it some sort of configuration?

Thank you!


Answer: Running a script is not the same as executing code in IPython. When you run
the code in a cell or prompt in IPython, it captures the output of the last
command and displays it to you. When you run a script, the script is just run,
and the only thing that is displayed is what is printed to the screen.

I don't think there is a way to send the IPython display object (which would
be needed to get pretty latex output) from a script, but I may be
misunderstanding how spyder executes the code in IPython, or missing some
hooks that it has. You can try

    
    
    from IPython.display import display
    display(integrate(x, x))
    

