Python 如何集成sympy表达式和latex格式

Python 如何集成sympy表达式和latex格式,python,sympy,Python,Sympy,你好,提前谢谢你的帮助。我正在尝试将良好的数学格式与sympy表达式混合。我用的是jupyter笔记本 我可以在单独的行上打印乳胶和漂亮的Symphy,但似乎无法找到将它们组合成一行的方法。下面的代码打印三行;第三行应该是前两行的组合。希望有一个优雅的解决方案,我还没有想出(有点Python的noob) 使用字符串格式时,使用sympy实现的str方法将表达式转换为字符串。 但是,str的输出不适用于乳胶输出,请参阅: 要获取表达式的字符串形式,请使用str(expr)。这也是由print(ex

你好,提前谢谢你的帮助。我正在尝试将良好的数学格式与sympy表达式混合。我用的是jupyter笔记本

我可以在单独的行上打印乳胶和漂亮的Symphy,但似乎无法找到将它们组合成一行的方法。下面的代码打印三行;第三行应该是前两行的组合。希望有一个优雅的解决方案,我还没有想出(有点Python的noob)


使用字符串格式时,使用sympy实现的
str
方法将表达式转换为字符串。 但是,
str
的输出不适用于乳胶输出,请参阅:

要获取表达式的字符串形式,请使用str(expr)。这也是由print(expr)生成的表单。字符串表单设计为易于阅读,但其形式符合正确的Python语法,因此可以复制和粘贴。表达式的str()形式通常与您输入的表达式看起来完全相同

因此,输出旨在成为有效的python代码:

>> str(expr)
'sqrt(3)*x**3'
要获取LaTeX格式的表达式,Symphy提供了。 它可以按如下方式调用:

>> sym.latex(expr)
'\\sqrt{3} x^{3}'
因此,只需将最后一行更改为

display(Math('\\frac{1}{2} %s' %sym.latex(expr)))

而且它看起来应该和预期的一样。

太棒了,谢谢!我知道这将是一件我无法理解的简单事情:|
display(Math('\\frac{1}{2} %s' %sym.latex(expr)))