此代码取自Sympy教程:
init_printing(use_unicode=False, wrap_line=False, no_global=True)
x = Symbol('x')
r = integrate(x**2 + x + 1, x)
print(r)
输出为:x**3/3 + x**2/2 + x
这是正确的,但在tutorial中,输出是:
3 2
x x
-- + -- + x
3 2
我如何达到这种形式的输出?
如有必要: IDE 是pyCharm, python ver。是3.3
答案 0 :(得分:1)
你需要一台漂亮的打印机pprint
而不是普通的print
。请参阅Sympy Tutorial部分Printing
>>> from sympy import *
>>> init_printing(use_unicode=False, wrap_line=False, no_global=True)
>>> x = Symbol('x')
>>> r = integrate(x**2 + x + 1, x)
>>> print(r)
x**3/3 + x**2/2 + x
>>> pprint(r)
3 2
x x
-- + -- + x
3 2
注意对于非字符串对象,print statement(Python 2.X)或print function(Python 3.X)使用{{3将对象转换为字符串}}。