【问题标题】:Initialize a variable number of sympy symbols初始化可变数量的 sympy 符号
【发布时间】:2019-06-17 09:29:10
【问题描述】:

每当你想使用 python 包 sympy,一个用于符号计算的包,你需要将变量初始化为

x, y, z = symbols('x y z')

对于我的应用程序,我需要的符号数量不是固定的。我只有信息,我必须用例如计算4 个变量。

是否有一种聪明的方式来写信,例如初始化

a,b,c = symbols('a b c')

当我需要三个变量时

a,b,c,d,e = symbols('a b c d e')

什么时候需要五个变量? 如果我需要比字母表​​中的字母更多的变量, 该函数应该开始初始化

aa, ab, ac,... .

【问题讨论】:

    标签: sympy python-3.7


    【解决方案1】:

    您可以在symbols 中使用切片符号来创建编号符号,例如

    In [16]: symbols('a1:100')                                                                                                        
    Out[16]: 
    (a₁, a₂, a₃, a₄, a₅, a₆, a₇, a₈, a₉, a₁₀, a₁₁, a₁₂, a₁₃, a₁₄, a₁₅, a₁₆, a₁₇, a₁₈, a₁₉, a₂₀, a₂₁, a₂₂, a₂₃, a₂₄, a₂₅, a₂₆, a₂₇, a
    ₂₈, a₂₉, a₃₀, a₃₁, a₃₂, a₃₃, a₃₄, a₃₅, a₃₆, a₃₇, a₃₈, a₃₉, a₄₀, a₄₁, a₄₂, a₄₃, a₄₄, a₄₅, a₄₆, a₄₇, a₄₈, a₄₉, a₅₀, a₅₁, a₅₂, a₅₃,
     a₅₄, a₅₅, a₅₆, a₅₇, a₅₈, a₅₉, a₆₀, a₆₁, a₆₂, a₆₃, a₆₄, a₆₅, a₆₆, a₆₇, a₆₈, a₆₉, a₇₀, a₇₁, a₇₂, a₇₃, a₇₄, a₇₅, a₇₆, a₇₇, a₇₈, a₇
    ₉, a₈₀, a₈₁, a₈₂, a₈₃, a₈₄, a₈₅, a₈₆, a₈₇, a₈₈, a₈₉, a₉₀, a₉₁, a₉₂, a₉₃, a₉₄, a₉₅, a₉₆, a₉₇, a₉₈, a₉₉)
    

    如果你想要 n 个符号,其中 n 是一个 int,你可以这样做

    syms = symbols('a1:%d' % n)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-15
      • 1970-01-01
      • 1970-01-01
      • 2021-07-08
      • 2016-02-24
      • 1970-01-01
      • 1970-01-01
      • 2011-05-09
      相关资源
      最近更新 更多