SymPy - Zahlen

Das Kernmodul im SymPy-Paket enthält die Zahlenklasse, die Ordnungszahlen darstellt. Diese Klasse hat zwei Unterklassen: Float- und Rational-Klasse. Die Rational-Klasse wird durch die Integer-Klasse weiter erweitert.

Die Gleitkommaklasse repräsentiert eine Gleitkommazahl mit beliebiger Genauigkeit.

>>> from sympy import Float 
>>> Float(6.32)

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

6.32

SymPy kann eine Ganzzahl oder eine Zeichenfolge in float konvertieren.

>>> Float(10)

10.0

Float('1.33E5')# scientific notation

133000.0

Bei der Konvertierung in Float ist es auch möglich, die Anzahl der Stellen für die Genauigkeit wie unten angegeben anzugeben.

>>> Float(1.33333,2)

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

1.3

Eine Darstellung einer Zahl (p / q) wird als Objekt der Rational-Klasse dargestellt, wobei q eine Zahl ungleich Null ist.

>>> Rational(3/4)

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

$\frac{3}{4}$

Wenn eine Gleitkommazahl an den Konstruktor Rational () übergeben wird, gibt sie den zugrunde liegenden Wert ihrer Binärdarstellung zurück

>>> Rational(0.2)

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

$\frac{3602879701896397}{18014398509481984}$

Geben Sie zur einfacheren Darstellung die Nennerbegrenzung an.

>>> Rational(0.2).limit_denominator(100)

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

$\frac{1}{5}$

Wenn eine Zeichenfolge an den Konstruktor Rational () übergeben wird, wird eine rationale Anzahl beliebiger Genauigkeit zurückgegeben.

>>> Rational("3.65")

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

$\frac{73}{20}$

Ein rationales Objekt kann auch erhalten werden, wenn zwei Zahlenargumente übergeben werden. Zähler- und Nennerteile sind als Eigenschaften verfügbar.

>>> a=Rational(3,5) 
>>> print (a) 
>>> print ("numerator:{}, denominator:{}".format(a.p, a.q))

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

3/5

numerator:3, denominator:5

>>> a

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

$\frac{3}{5}$

Die Ganzzahlklasse in SymPy repräsentiert eine Ganzzahl beliebiger Größe. Der Konstruktor kann eine Float- oder Rational-Zahl akzeptieren, der Bruchteil wird jedoch verworfen

>>> Integer(10)

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

10

>>> Integer(3.4)

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

3

>>> Integer(2/7)

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

0

SymPy hat eine RealNumberKlasse, die als Alias ​​für Float fungiert. SymPy definiert Zero und One auch als Singleton-Klassen, auf die mit S.Zero bzw. S.One zugegriffen werden kann (siehe unten).

>>> S.Zero

Die Ausgabe ist wie folgt -

0

>>> S.One

Die Ausgabe ist wie folgt -

1

Andere vordefinierte Singleton-Zahlenobjekte sind Half, NaN, Infinity und ImaginaryUnit

>>> from sympy import S 
>>> print (S.Half)

Die Ausgabe ist wie folgt -

½

>>> print (S.NaN)

Die Ausgabe ist wie folgt -

nan

Infinity ist als oo-Symbolobjekt oder S.Infinity verfügbar

>>> from sympy import oo 
>>> oo

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

$\infty$

>>> S.Infinity

Die Ausgabe für das obige Code-Snippet lautet wie folgt:

$\infty$

Die ImaginaryUnit-Nummer kann als I-Symbol importiert oder als S.ImaginaryUnit aufgerufen werden und repräsentiert die Quadratwurzel von -1

>>> from sympy import I 
>>> I

Wenn Sie das obige Code-Snippet ausführen, erhalten Sie die folgende Ausgabe:

i

>>> S.ImaginaryUnit

Die Ausgabe des obigen Snippets ist wie folgt:

i

>>> from sympy import sqrt 
>>> i=sqrt(-1) 
>>> i*i

Wenn Sie das obige Code-Snippet ausführen, erhalten Sie die folgende Ausgabe:

-1