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