我如何求解包含求和表达式的等式,即 类似的东西。
我会考虑以下代码片段来解决这个等式:
from sympy import *
i, N, x = symbols("n, N, x")
y = Function("y")
eq = summation(x + y(i), (i, 0, N))
print solve(eq, [x])
然而,虽然这个等式很简单solve()
但不会产生结果。该
预期的解决方案是
答案 0 :(得分:2)
我认为简单的答案是,当前系统太复杂,无法进行所需的替换。
话虽如此,这里可能存在扩大求和的问题。
我设法通过更改Sum
输出中的expand
和summation
来获得正确的答案,请参阅下面的控制台会话。
我认为最后一个可能的原因是summation(x, (i, 0, N))
评估为x*(N + 1)
(summation
函数的效果),而Sum(x, (i, 0, N))
返回的Sum
扩展仍然是一个简单的solve
对象,因此在>>> from sympy import *
>>>
>>> i, N, x, y = symbols("i, N, x, y")
>>> eq = summation(x + y(i), (i, 0, N))
>>>
>>> expand(eq)
Sum(x, (i, 0, N)) + Sum(y(i), (i, 0, N))
>>>
>>> solve(summation(x, (i, 0, N)) + summation(y(i), (i, 0, N)), x)
[Sum(-y(i), (i, 0, N))/(N + 1)]
函数内部扩展后没有替换它。
self.pushButton786.clicked.connect(self.refresh)
def refresh(self):
db = MySQLdb.connect('localhost', 'root', 'Suhel786', 'project')
cursor = db.cursor()
cursor.execute("select count(*) from donor")
a=fetchchone()
b=int(a[0])
cursor.execute("select count(*) from customer")
c=fetchchone()
d=int(c[0])
self.label_8.setText(str(b))
self.label_9.setText(str(d))
db.close()