gpt4 book ai didi

python - 从 Sympy 作为 finiteset 返回的解决方案集中获取值

转载 作者:太空狗 更新时间:2023-10-29 17:05:14 24 4
gpt4 key购买 nike

我正在 Python Sympy 库中创建脚本并尝试访问 solveset() 和 linsolve() 函数返回的结果。我的问题是这些函数返回的对象是 finiteset 类型,我想自动选择一些结果以将其重新输入其他方程式。 任何人都可以帮助我吗?

一个例子:I create a list of equations with two unknown variables:

>>> a1, a2 = symbols('a1, a2')
>>> eq2_1 = Eq(-3*a1/10 - 3*a2/20 + 1/12)
>>> eq2_2 = Eq(-3*a1/20 - 13*a2/105 + 1/20)
>>> lista = [eq2_1,eq2_2]
>>> str(lista)
[-3*a1/10 - 3*a2/20 + 1/12, -3*a1/20 - 13*a2/105 + 1/20]

然后使用 linsolve() 方法解决它。

>>> a = linsolve(lista,a1,a2)
>>> a
{(71/369, 7/41)}

结果是正确的,但我无法将这些结果放入变量中。

O 试过 dics、lists、tuples、索引命令,但总是返回错误。 “有限集对象没有属性‘命令’”

最佳答案

我在这个链接 http://docs.sympy.org/latest/tutorial/manipulation.html 中找到了 sympy 库方式

在函数或结果对象中使用 .args 属性。如果我有一个函数:

>>>func = Eq(u(x),−x+sin(x)) 
>>>func
u(x) = -x + sin(x)
>>>func.args[0]
u(x)
>>>func.args[1]
-x+sin(x)

这同样适用于有限集类型的结果。

关于python - 从 Sympy 作为 finiteset 返回的解决方案集中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38418205/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com