gpt4 book ai didi

python - 使用相同的符号生成许多 SymPy 表达式

转载 作者:太空宇宙 更新时间:2023-11-04 06:03:25 25 4
gpt4 key购买 nike

我想使用同一组符号创建许多(超过 400 个)SymPy 表达式。表达式看起来像:

z_1_8 = k1 + k2 + kuni + k4 + k7
z_2_9_0 = k2 + k8 + k1 + k6
z_3_1_10 = k3 + kbi + k2 + k7

名称“z_1_8”将从列表中生成,列表中的每个成员都包含命名每个表达式的数字。同样,这些符号也将来自一个列表,其中每个成员都包含一个符号列表作为字符串 - 'k1''k2' 等 - 对于每个表达式生成。

list_to_generate_expression_names = [[1, 8], [2, 9, 0], [3, 1, 10],...]
list_to_generate_expressions = [['k1', 'k2','kuni','k4','k7'], ['k2', 'k8', 'k1', 'k6'], ['k3', 'kbi', 'k2', 'k7']]

有什么方法可以做到这一点?

最佳答案

我在这里假设您的 list_to_generate_expressions 中的每个字符串都是已经存在的对象的名称。如果是这种情况,并且您的列表正确匹配,您可以这样做:

names = ['z_' + '_'.join([str(n) for n in name_nums]) for name_nums in list_to_generate_expression_names]
exprs = ['+'.join(expr_items) for expr_items in list_to_generate_expressions]

for name, expr in zip(names,exprs):
exec('{0} = {1}'.format(name,expr))

请注意,这确实使用了 exec,应始终谨慎使用,但由于您使用的是自己的列表,因此它是绝对安全的。

关于python - 使用相同的符号生成许多 SymPy 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23449665/

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