- SymPy 教程
- SymPy - 首页
- SymPy - 简介
- SymPy - 安装
- SymPy - 符号计算
- SymPy - 数字
- SymPy - 符号
- SymPy - 替换
- SymPy - sympify() 函数
- SymPy - evalf() 函数
- SymPy - Lambdify() 函数
- SymPy - 逻辑表达式
- SymPy - 查询
- SymPy - 简化
- SymPy - 导数
- SymPy - 积分
- SymPy - 矩阵
- SymPy - 函数类
- SymPy - 四元数
- SymPy - 求解器
- SymPy - 绘图
- SymPy - 实体
- SymPy - 集合
- SymPy - 打印
- SymPy 有用资源
- SymPy - 快速指南
- SymPy - 有用资源
- SymPy - 讨论
SymPy - 查询
SymPy 包中的 assumptions 模块包含用于提取表达式信息的工具。该模块为此目的定义了 ask() 函数。
sympy.assumptions.ask(property)
以下属性提供关于表达式的有用信息:
algebraic(x)
要成为代数的,一个数必须是非零多项式方程的根,且具有有理系数。√2 是代数的,因为√2 是 x² − 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
Q.irrational(x) 当且仅当 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)
广告