我試圖讓sympy在迭代的基礎上用一個符號代替另外兩個符號。 目前,我有一些代碼,做一些支架和賣場的擴張每次迭代:sympy序列替換python
for i in range(0,nMoments-1):
middle.append(K+i)
生產
[K]
[K, K + 1]
[K, K + 1, K + 2]
我想什麼做的是爲每一行對於K代替兩個符號,它們本身存儲在等長度爲m1和m2的矢量中。因此,對於第一行,對於每個KI想要替代m1 [0]/m2 [0],然後對於第二行中的每個K1 [1]/m2 [1],對於第三行中的K1 m1 [2 ] /平方米[2]等
使得用於中間[0]的M1和M2矢量的指數化當量放入K.
作爲參考,nMoments只是一個int變量
從我可以告訴你,我最親密的嘗試至今
for i in range(0,nMoments):
K.replace(K,m1[i]**2/m2[i])
print middle
然而,這會產生這樣的:
[K, K + 1, K + 2]
[K, K + 1, K + 2]
[K, K + 1, K + 2]
有誰知道我該如何解決這個問題?
非常感謝!
'type(K)'是什麼? – unutbu
@unutbu這是一個sympy符號:'' –
user124123
你想要'replace'的返回值。這不是在現場。 – Krastanov