SymPy - Sorgulama
SymPy paketindeki varsayımlar modülü, ifadeler hakkında bilgi almak için araçlar içerir. Modül bu amaçla ask () işlevini tanımlar.
sympy.assumptions.ask(property)
Aşağıdaki özellikler bir ifade hakkında yararlı bilgiler sağlar -
algebraic(x)
Cebirsel olması için bir sayı, rasyonel katsayılara sahip sıfır olmayan bir polinom denkleminin kökü olmalıdır. √2 çünkü √2, x2 - 2 = 0 için bir çözümdür, dolayısıyla cebirseldir.
complex(x)
Karmaşık sayı yüklemi. Ancak ve ancak x karmaşık sayılar kümesine aitse doğrudur.
composite(x)
Ask (Q.composite (x)) tarafından döndürülen bileşik sayı koşulu, yalnızca x pozitif bir tamsayı ise ve 1'den ve sayının kendisi dışında en az bir pozitif bölen varsa doğrudur.
even, odd
Ask (), x'in true değerini döndürür, sırasıyla çift sayılar ve tek sayılar kümesindedir.
imaginary
Bu özellik, Hayali sayı koşulunu temsil eder. X sanal birim I ile çarpılan gerçek bir sayı olarak yazılabilirse doğrudur.
integer
Q.integer (x) tarafından döndürülen bu özellik true, x aittir çift sayılar kümesine aittir.
rational, irrational
S. İrrasyonel (x), ancak ve ancak x, tamsayıların oranı olarak ifade edilemeyen herhangi bir gerçek sayı ise doğrudur. Örneğin pi irrasyonel bir sayıdır.
positive, negative
Sayının pozitif mi yoksa negatif mi olduğunu kontrol etmeyi öngörür
zero, nonzero
Bir sayının sıfır olup olmadığını kontrol etmeyi öngörür
>>> from sympy import *
>>> x=Symbol('x')
>>> x=10
>>> ask(Q.algebraic(pi))
False
>>> ask(Q.complex(5-4*I)), ask( Q.complex(100))
(True, True)
>>> x,y=symbols("x y")
>>> x,y=5,10
>>> ask(Q.composite(x)), ask(Q.composite(y))
(False, True)
>>> ask(Q.even(x)), ask(Q.even(y))
(False, True)
>>> x,y= 2*I, 4+5*I
>>> ask(Q.imaginary(x)), ask(Q.imaginary(y))
(True, False)
>>> x,y=5,10
>>> ask(Q.even(x)), ask(Q.even(y)), ask(Q.odd(x)), ask(Q.odd(y))
(False, True, True, False)
>>> x,y=5,-5
>>> ask(Q.positive(x)), ask(Q.negative(y)), ask(Q.positive(x)), ask(Q.negative(y))
(True, True, True, True)
>>> ask(Q.rational(pi)), ask(Q.irrational(S(2)/3))
(False, False)
>>> ask(Q.zero(oo)), ask(Q.nonzero(I))
(False, False)