SymPy - Mencetak
Ada beberapa printer yang tersedia di SymPy. Berikut ini adalah sebagian daftar -
- str
- srepr
- Printer cantik ASCII
- Unicode printer cantik
- LaTeX
- MathML
- Dot
Objek SymPy juga dapat dikirim sebagai output ke kode berbagai bahasa, seperti C, Fortran, Javascript, Theano, dan Python.
SymPy menggunakan karakter Unicode untuk membuat keluaran dalam bentuk cetakan cantik. Jika Anda menggunakan konsol Python untuk menjalankan sesi SymPy, lingkungan pencetakan terbaik yang bagus diaktifkan dengan memanggil fungsi init_session ().
>>> from sympy import init_session
>>> init_session()
Konsol IPython untuk SymPy 1.5.1 (Python 3.7.4-64-bit) (tipe dasar: python).
Perintah-perintah ini dijalankan -
>>> 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()
Dokumentasi dapat ditemukan di https://docs.sympy.org/1.5.1/.
>>> Integral(sqrt(1/x),x)
$\int \sqrt\frac{1}{x} dx$
Jika LATEX tidak diinstal, tetapi Matplotlib diinstal, itu akan menggunakan mesin rendering Matplotlib. Jika Matplotlib tidak diinstal, ia menggunakan printer cantik Unicode. Namun, notebook Jupyter menggunakan MathJax untuk merender LATEX.
Di terminal yang tidak mendukung Unicode, printer cantik ASCII digunakan.
Untuk menggunakan printer ASCII gunakan fungsi pprint () dengan properti use_unicode disetel ke False
>>> pprint(Integral(sqrt(1/x),x),use_unicode=False)
Printer cantik Unicode juga diakses dari pprint () dan pretty (). Jika terminal mendukung Unicode, itu digunakan secara otomatis. Jika pprint () tidak dapat mendeteksi bahwa terminal mendukung unicode, Anda dapat meneruskan use_unicode = True untuk memaksanya menggunakan Unicode.
Untuk mendapatkan bentuk LATEX dari sebuah ekspresi, gunakan fungsi latex ().
>>> print(latex(Integral(sqrt(1/x),x)))
\int \sqrt{\frac{1}{x}}\, dx
Anda juga dapat menggunakan printer mathml. untuk tujuan itu, impor fungsi print_mathml. Versi string diperoleh dengan fungsi mathml ().
>>> from sympy.printing.mathml import print_mathml
>>> print_mathml(Integral(sqrt(1/x),x))
<apply>
<int/>
<bvar>
<ci>x</ci>
</bvar>
<apply>
<root/>
<apply>
<power/>
<ci>x</ci>
<cn>-1</cn>
</apply>
</apply>
</apply>
>>>mathml(Integral(sqrt(1/x),x))
'<apply><int/><bvar><ci>x</ci></bvar><apply><root/><apply><power/><ci>x</ci><cn>-1</cn></apply></apply></apply>'