gpt4 book ai didi

sympy - 如何在 SymPy 中定义大量符号

转载 作者:行者123 更新时间:2023-12-01 00:20:21 25 4
gpt4 key购买 nike

我试图在“sympy”中定义很多变量以进行符号处理。

import sympy as sp
b_0=sp.symbols('b_0')
b_1=sp.symbols('b_1')
...
b_X=sp.symbols('b_X')

依此类推,X 从 1 到 1000。

有没有简单的方法来做到这一点?

最佳答案

有几个选项:

>>> sp.symbols('b_0:10')
(b_0, b_1, b_2, b_3, b_4, b_5, b_6, b_7, b_8, b_9)

或者,使用格式化的字符串,
>>> n = 10
>>> sp.symbols('b_0:{}'.format(n))
(b_0, b_1, b_2, b_3, b_4, b_5, b_6, b_7, b_8, b_9)

这些返回一个符号元组。还有更多格式选项:请参阅 symbols docs

还有一个函数可以生成一个 NumPy 符号数组:
>>> sp.symarray('b', 10)
array([b_0, b_1, b_2, b_3, b_4, b_5, b_6, b_7, b_8, b_9], dtype=object)

所有这些示例都旨在分配给某些东西。例如, b = sp.symbols('b_0:10') 将符号的元组分配给 b,因此它们可以作为 b[0], b[1] 等访问。SymPy 符号是 而不是 由代表它们的字符串访问,例如 "b_0" or "b_1"

最后,还有 Indexed objects 以防您需要不确定大小的符号数组:当您使用 A[n] 表示法时,索引对象是动态创建的, A 是一个 IndexedBase。

关于sympy - 如何在 SymPy 中定义大量符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49226812/

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