尝试绘制一个函数,到目前为止我已经想出了这个。
import matplotlib.pyplot as plt
R = 1.097e-2
for m in range(1,4):
print("Series for m =",m)
for n in range(m+1,m+6):
invlambda = R*(1/m**2-1/n**2)
print(" ",1/invlambda," nm")
我得到除法的错误0.不确定为什么..... 任何帮助将不胜感激。
答案 0 :(得分:1)
问题在于你正在进行整数除法。在1.
。
invlambda
import matplotlib.pyplot as plt
R = 1.097e-2
for m in range(1,4):
print("Series for m =",m)
for n in range(m+1,m+6):
invlambda = R*(1./m**2-1./n**2)
print(" ",1/invlambda," nm")
在python 2中......表达式1/2
是一个整数除法并给出1/2=0
,因此你有1/2**2-1/3**2=0
。它通过使用1.
解决,即1./2 = 0.5
。