📜  SymPy-打印

📅  最后修改于: 2020-11-05 04:48:17             🧑  作者: Mango


SymPy中有几台打印机可用。以下是部分列表-

  • 力量
  • srepr
  • ASCII漂亮打印机
  • Unicode漂亮打印机
  • 胶乳
  • 数学语言

SymPy对象也可以作为输出发送到各种语言的代码,例如C,Fortran,Javascript,Theano和Python。

SymPy使用Unicode字符以漂亮的打印形式呈现输出。如果您使用Python控制台执行SymPy会话,则可以通过调用init_session()函数来激活最佳的打印环境。

>>> from sympy import init_session 
>>> init_session()

用于SymPy 1.5.1的IPython控制台(Python 3.7.4-64位)(基本类型: Python)。

这些命令已执行-

>>> from __future__ import division
>>> from sympy import *
>>> x, y, z, t = symbols('x y z t')
>>> k, m, n = symbols('k m n', integer=True)
>>> f, g, h = symbols('f g h', cls=Function)
>>> init_printing()

可以在https://docs.sympy.org/1.5.1/中找到文档

>>> Integral(sqrt(1/x),x)

$ \ int \ sqrt \ frac {1} {x} dx $

如果未安装LATEX,但已安装Matplotlib,它将使用Matplotlib渲染引擎。如果未安装Matplotlib,它将使用Unicode漂亮打印机。但是,Jupyter笔记本使用MathJax渲染LATEX。

在不支持Unicode的终端中,使用ASCII漂亮打印机。

ASCII漂亮打印机

要使用ASCII打印机,请使用use_unicode属性设置为False的pprint()函数

>>> pprint(Integral(sqrt(1/x),x),use_unicode=False)

Unicode漂亮打印机

还可以从pprint()和pretty()访问Unicode漂亮打印机。如果终端支持Unicode,则会自动使用。如果pprint()无法检测到终端支持unicode,则可以传递use_unicode = True强制其使用Unicode。

要获取表达式的LATEX形式,请使用latex()函数。

>>> print(latex(Integral(sqrt(1/x),x)))

\ int \ sqrt {\ frac {1} {x}} \,dx

您也可以使用mathml打印机。为此,请导入print_mathml函数。字符串版本是通过mathml()函数获得的。

>>> from sympy.printing.mathml import print_mathml 
>>> print_mathml(Integral(sqrt(1/x),x))

<应用>

x

<应用>

<应用>

x

-1

>>>mathml(Integral(sqrt(1/x),x))

x x -1