【发布时间】:2019-05-26 23:23:57
【问题描述】:
我有一个符号表达式列表,如下所示:
import numpy as np
import sympy
s = sympy.Symbol('s')
x = [ s, s+1, 10*s**2, 5]
使用“sum”添加元素后:
y = sum (x)
我会得到:10*s**2 + 2*s + 6
我想为下面列表中的每个元素评估这个表达式:
s = [1, 2 , 3 , 4 , 5]
我知道我可以定义如下函数:
def F (s):
F = 10*s**2 + 2*s + 6
return F
f_dis = [F(value )for value in s]
它会给出我正在寻找的结果:[18, 50, 102, 174, 266]
但是,我的问题是我必须定义 F 并在我的代码中编写表达式。有没有其他方法可以评估sum (x) 而无需在我的代码中编写F = 10*s**2 + 2*s + 6?
我无法将sum (x) 的结果复制并粘贴到我的代码中。
【问题讨论】:
-
docs.sympy.org/latest/tutorial/basic_operations.html。
ans = [y.subs(s,el) for el in alist]您不应将s重命名为该列表。给它另一个名字,它会工作
标签: python list sum sympy evaluation