python - 比较 Sympy 因子结果为 false

标签 python comparison sympy factoring

我发现了一个我无法理解的关于 Sympy 的问题。

为什么这会返回 false...

factor(81*q + 90) == 9*(9*q + 10)

...同时返回 true?

factor(q**2-64) == (q+8)*(q-8)

当我打字时

factor(81*q + 90)

输出正是这个表达式

9*(9*q + 10)

那么,为什么 Sympy 不认为我的第一个比较是正确的?

最佳答案

SymPy 自动分配 number*addition,例如 9*(9*q + 10)81*q + 90factor 使用一个技巧来防止这种自动简化(基本上,Mul(9, 9*q + 10, evaluate=False))。

有一个open issue删除此自动简化,但尚未实现。

关于python - 比较 Sympy 因子结果为 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35417031/

相关文章:

python 错误“TypeError : function takes exactly 1 argument (0 given)

python - Django 模板中的日期格式

python - 如何使用 Python 测试唯一字符串和重复字符串(不同大小写)

python - 使用大量内存的简单 Python 脚本

python - “符号”对象不支持索引

python - Scrapy 不能同时使用 return 和yield

python - 下载 youtube 流时如何限制 youtube-dl 的视频长度

arrays - VBA比较2个数组,用逗号分隔符将唯一值写入单元格

c++ - 如何比较 char 或 string 变量是否等于某个字符串?

python - Sympy 简化逻辑