from sympy.physics.hydrogen import R_nl
from sympy import var
from sympy import Matrix
import sympy as sp
sp.init_printing(use_latex="mathjax")
r1,Z=var("r1 Z")
r2,Z=var("r2,Z")
O=sp.zeros(3)
k=0
for i in range(1,3,1):
for j in range(0,i,1):
print("n=",i,"l=",j, ":")
O[k]= R_nl(i,j,r1,Z)
display(O[k])
print("------------------------------------")
k=k+1
在上面的代码中,我将内置函数R_nl(它是氢原子波函数的径向部分)存储在一维数组中。我希望将其存储在二维数组中。内置的R_nl函数必须具有正整数参数n和l,因此将其存储在二维数组中会很好。有人可以帮助我将其存储在二维数组中吗?如果我尝试将其存储在二维数组中,则会引发以下错误消息
TypeError Traceback (most recent call last)
<ipython-input-22-6bcaaf0f91e4> in <module>
19
20 print("n=",i,"l=",j, ":")
---> 21 O[k][s]= R_nl(i,j,r1,Z)
22 display(O[k][s])
23 print("------------------------------------")
TypeError: 'Zero' object does not support item assignment
答案 0 :(得分:1)
尝试像O[k, s]
而不是O[k][s]
那样访问矩阵。