Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 简化删除Sympy中的关系项?_Python_Sympy - Fatal编程技术网

Python 简化删除Sympy中的关系项?

Python 简化删除Sympy中的关系项?,python,sympy,Python,Sympy,我试图用sympy简化一个表达式,但是关系词似乎消失了。玩具示例如下所示: import sympy from sympy import * x = Symbol('x') y = Symbol('y') z = Symbol('z') 如果我跑步: z * Eq(x, y) 那么输出是: z*(x == y) z 但如果我尝试使用以下方法简化此过程: simplify(z * Eq(x, y)) 那么输出是: z*(x == y) z 这是我所不期望的——我应该期望这种行为吗?如

我试图用sympy简化一个表达式,但是关系词似乎消失了。玩具示例如下所示:

import sympy
from sympy import *
x = Symbol('x')
y = Symbol('y')
z = Symbol('z')
如果我跑步:

z * Eq(x, y)
那么输出是:

z*(x == y)
z
但如果我尝试使用以下方法简化此过程:

simplify(z * Eq(x, y))
那么输出是:

z*(x == y)
z
这是我所不期望的——我应该期望这种行为吗?如果是的话,有没有办法防止simplify删除关系项


谢谢。

逻辑运算和算术运算不能结合起来进行这样的运算

假设:

对于算术运算:

对于逻辑操作:


你对那个方程是什么意思?也许你在尝试逻辑运算,比如:Andz,Eqx,y,在这种情况下simplify工作得很完美。我希望sympy会根据它是真是假来解释Eqx,y为1或0,然后你应该使用:f=分段1,Eqx,y,0,true,然后:simplifyz*fw当你确认这是你想要的,我会把它贴出来作为回答谢谢!这很笨重,但很有效,也很有意义。
f = And(z,Eq(x,y))                     # z ∧ (x = y)
simplify(f)