我有一个我想在某一点评估的同情对象列表(x0 = 1,x1 = 1),我尝试在 for 循环中使用evalf和subs但是没有运气。这是我的代码:
from sympy import *
b = [3*x0**2 + 4*x1, 4*x0]
for i in b:
i = i.subs({x0:1, x1:1})
print(b)
它返回与以前相同的列表。
答案 0 :(得分:1)
在你的循环中,你根本不在b
上操作。
你可以这样做。
>>> from sympy import *
>>> var('x0 x1')
(x0, x1)
>>> b = [3*x0**2 + 4*x1, 4*x0]
>>> [_.subs({x0:1, x1:1}) for _ in b]
[7, 4]
请注意,此代码分别对b
中的每个表达式进行操作,因为b
整体上不是表达式。