SymPy - Angka
Modul inti dalam paket SymPy berisi kelas Nomor yang mewakili nomor atom. Kelas ini memiliki dua subclass: kelas Float dan Rational. Kelas rasional selanjutnya diperluas dengan kelas Integer.
Kelas float merepresentasikan jumlah floating point presisi arbitrer.
>>> from sympy import Float
>>> Float(6.32)
Output dari potongan kode di atas adalah sebagai berikut -
6.32
SymPy dapat mengubah integer atau string menjadi float.
>>> Float(10)
10.0
Float('1.33E5')# scientific notation
133000.0
Saat mengonversi menjadi float, dimungkinkan juga untuk menentukan jumlah digit untuk presisi seperti yang diberikan di bawah ini -
>>> Float(1.33333,2)
Output dari potongan kode di atas adalah sebagai berikut -
1.3
Representasi bilangan (p / q) direpresentasikan sebagai objek kelas Rasional dengan q sebagai bilangan bukan nol.
>>> Rational(3/4)
Output dari potongan kode di atas adalah sebagai berikut -
$\frac{3}{4}$
Jika bilangan floating point diteruskan ke konstruktor Rational (), ia mengembalikan nilai yang mendasari representasi binernya
>>> Rational(0.2)
Output dari potongan kode di atas adalah sebagai berikut -
$\frac{3602879701896397}{18014398509481984}$
Untuk representasi yang lebih sederhana, tentukan batasan penyebut.
>>> Rational(0.2).limit_denominator(100)
Output dari potongan kode di atas adalah sebagai berikut -
$\frac{1}{5}$
Saat string diteruskan ke konstruktor Rational (), sejumlah rasional presisi arbitrer dikembalikan.
>>> Rational("3.65")
Output dari potongan kode di atas adalah sebagai berikut -
$\frac{73}{20}$
Objek rasional juga dapat diperoleh jika dua argumen angka dilewatkan. Bagian pembilang dan penyebut tersedia sebagai properti.
>>> a=Rational(3,5)
>>> print (a)
>>> print ("numerator:{}, denominator:{}".format(a.p, a.q))
Output dari potongan kode di atas adalah sebagai berikut -
3/5
numerator:3, denominator:5
>>> a
Output dari potongan kode di atas adalah sebagai berikut -
$\frac{3}{5}$
Kelas integer di SymPy mewakili bilangan bulat dengan ukuran berapa pun. Konstruktor dapat menerima bilangan Float atau Rasional, tetapi bagian pecahannya dibuang
>>> Integer(10)
Output dari potongan kode di atas adalah sebagai berikut -
10
>>> Integer(3.4)
Output dari potongan kode di atas adalah sebagai berikut -
3
>>> Integer(2/7)
Output dari potongan kode di atas adalah sebagai berikut -
0
SymPy memiliki file RealNumberkelas yang bertindak sebagai alias untuk Float. SymPy juga mendefinisikan Zero dan One sebagai kelas tunggal yang masing-masing dapat diakses dengan S.Zero dan S.One seperti yang ditunjukkan di bawah ini -
>>> S.Zero
Outputnya adalah sebagai berikut -
0
>>> S.One
Outputnya adalah sebagai berikut -
1
Objek nomor Singleton standar lainnya adalah Half, NaN, Infinity dan ImaginaryUnit
>>> from sympy import S
>>> print (S.Half)
Outputnya adalah sebagai berikut -
½
>>> print (S.NaN)
Outputnya adalah sebagai berikut -
nan
Infinity tersedia sebagai objek simbol oo atau S.Infinity
>>> from sympy import oo
>>> oo
Output dari potongan kode di atas adalah sebagai berikut -
$\infty$
>>> S.Infinity
Output dari potongan kode di atas adalah sebagai berikut -
$\infty$
Nomor ImaginaryUnit dapat diimpor sebagai simbol I atau diakses sebagai S. ImaginaryUnit dan mewakili akar kuadrat -1
>>> from sympy import I
>>> I
Saat Anda menjalankan cuplikan kode di atas, Anda mendapatkan output berikut -
i
>>> S.ImaginaryUnit
Output dari potongan di atas adalah sebagai berikut -
i
>>> from sympy import sqrt
>>> i=sqrt(-1)
>>> i*i
Saat Anda menjalankan cuplikan kode di atas, Anda mendapatkan output berikut -
-1