Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/318.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进口* x、 y,s=符号('xys') z=(1-2*x*x) w=(1+2*x*x) q=2*x*x*2*y*y sub={2*x*x:s} 打印w.subs(sub) 打印z.subs(sub) 打印q 打印q.subs(sub)_Python_Substitution_Sympy - Fatal编程技术网

Python 带标量的同余代词不';不行? 从sympy进口* x、 y,s=符号('xys') z=(1-2*x*x) w=(1+2*x*x) q=2*x*x*2*y*y sub={2*x*x:s} 打印w.subs(sub) 打印z.subs(sub) 打印q 打印q.subs(sub)

Python 带标量的同余代词不';不行? 从sympy进口* x、 y,s=符号('xys') z=(1-2*x*x) w=(1+2*x*x) q=2*x*x*2*y*y sub={2*x*x:s} 打印w.subs(sub) 打印z.subs(sub) 打印q 打印q.subs(sub),python,substitution,sympy,Python,Substitution,Sympy,我得到的输出: from sympy import * x,y,s = symbols('xys') z = (1 - 2*x*x) w = (1 + 2*x*x) q = 2*x*x*2*y*y sub = {2*x*x: s} print w.subs(sub) print z.subs(sub) print q print q.subs(sub) 1+s 1-2*x**2 4*x**2*y**2 4*x**2*y**2 我期望的结果是: 1 + s 1 - 2*x**2 4*x**

我得到的输出:

from sympy import * x,y,s = symbols('xys') z = (1 - 2*x*x) w = (1 + 2*x*x) q = 2*x*x*2*y*y sub = {2*x*x: s} print w.subs(sub) print z.subs(sub) print q print q.subs(sub) 1+s 1-2*x**2 4*x**2*y**2 4*x**2*y**2 我期望的结果是:

1 + s 1 - 2*x**2 4*x**2*y**2 4*x**2*y**2 1+s 1-s 4*x**2*y**2 2*y**2*s
我做错什么了吗?

Sympy在匹配的内容上似乎不一致。例如,更改匹配替换表达式上的符号可以使z与匹配。我会考虑增加这个例子。我也会试试这个。请记住,这个项目甚至还没有达到1.0版本,所以使用它(或者可能与任何软件一样)都不会完美

我已经注意到,改变标志使其在第二种情况下而不是第一种情况下工作。标量值的处理方式似乎有点过于直接。我也知道这个项目正处于非常早期的开发阶段,象征性的操作并不容易,所以它可能会存在很长一段时间。我只是希望这可能是一个足够简单的问题,有一些简单的解决办法。我已经将这个示例发送到了邮件列表中。 1 + s 1 - s 4*x**2*y**2 2*y**2*s