使用python输出Sympy乳胶

时间:2018-05-21 11:19:10

标签: python latex sympy

我正在尝试使用以下python代码

已解决(由@TheFool提示):通过将latex()放入打印功能,它可以正常工作。

from sympy import *
from sympy.printing.mathml import mathml
init_printing(use_unicode=True) # allow LaTeX printing

# independent variables
x, y, z = symbols('x y z', real = True)

# parameters
nu, rho = symbols('nu rho', real = True, constant = True, positive = True)

# dependent variables
u, v, w = symbols('u v w', real = True, cls = Function)

print(latex(diff(u(x,y,z),x)))

输出看起来像 '\\frac{\\partial}{\\partial x} u{\\left (x,y,z \\right )}'

如何在输出的开头和结尾删除额外的反斜杠和引号?

3 个答案:

答案 0 :(得分:1)

您是否尝试过包含:..?

from sympy import init_printing
init_printing() 

查看sympy打印选项的说明。看起来init_printing是获得正确输出的方法。

http://docs.sympy.org/latest/tutorial/printing.html

答案 1 :(得分:1)

当您将输出写入文件时

out_file = open("output.txt","w")
out_file.write(latex(diff(u(x,y,z),x)))
out_file.close()

它们看起来就像你想要的那样。

答案 2 :(得分:0)

from sympy import Matrix, print_latex

X = Matrix([1,2,3])
print_latex(X)

out: \left[\begin{matrix}1\\2\\3\end{matrix}\right]

(只有在笔记本环境中才会这样打印)