为什么我不能将子与 sympy 一起使用?'list'对象没有属性'subs'



我想将x替换为用户user插入的var

import numpy as np
from sympy import *
x = Symbol('x')
xi =int(input("insert initial x: "))
funcion = input("Insert the function: ")
def fx(funcion,x):
return solve(funcion,x, implicit=true))

despejada = fx(funcion,x)
print(despejada.subs({x:xi)

我插入:

10

x + 10

我:

weass.py", line 13, in <module>
print(despejada.subs({x:xi})) AttributeError: 'list' object has no attribute 'subs'

为什么我不能使用sympy吗?

正如在注释中提到的,solve函数返回一个不同解决方案的列表(这里它包含一个元素)。您需要使用下标(带括号)来引用单个解决方案。

despejada[0].subs({x:xi})

作为一个额外的提示:除非您从自己的包中导入您了解的所有内容,否则避免使用from sympy import *,因为它会使您的命名空间混乱。更喜欢使用import sympy as sp之类的东西,就像你用numpy做的那样。它可以为你省去一些麻烦。

相关内容

  • 没有找到相关文章

最新更新