SymPy 查询

SymPy 查询

SymPy 包中的 assumptions 模块包含了提取表达式信息的工具。该模块定义了 ask() 函数用于此目的。

sympy.assumptions.ask(property)

以下属性提供有关表达式的有用信息 –

algebraic(x)

为了是代数的,一个数字必须是一个具有有理系数的非零多项式方程的根。√2是代数的,因为√2是方程x2 – 2 = 0的解,所以它是代数的。

complex(x)

复数谓词。当且仅当x属于复数集合时为真。

composite(x)

由ask(Q.composite(x))返回的复合数断言是真当且仅当x是正整数,且至少有一个正因子不等于1和本身。

even, odd

如果x在偶数集合和奇数集合中,则ask()分别返回true。

imaginary

此属性表示虚数断言。如果x可以写为实数乘以虚数单位I,则为真。

integer

由Q.integer(x)返回的此属性在x属于偶数集合时返回true。

rational, irrational

如果x是不能表示为整数比例的任意实数,则Q.irrational(x)为真。例如,π是一个无理数。

positive, negative

检查数字是否为正或负的断言

zero, nonzero

检查数字是否为零或非零的断言

>>> 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)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程