我正在尝试在Python 3.4.3中创建一个列表,其中包含-10到10之间的数字,步长为.1,因此我的列表变为:a =[-10.0,-9.9,-9.8,-9.7............. 9.9,10]
我还想用matplotlob.pyplot
画一个图表,这是我的代码:
import numpy as np
import matplotlib.pyplot as plt
a = []
b = []
for i in range(-10,10,.1):
a.append(i)
npa = np.array(a)
npb= np.array(b)
npb = 1 / (npa**2)
plt.plot(npa, npb)
plt.show()
但是我收到错误说: for i in range(-10,10,.1):
TypeError: 'float' object cannot be interpreted as an integer
请问有什么解决方案吗?
对于这些行:
a = []
b = []
for i in range(-10,10,.1):
a.append(i)
有没有更短的代码?
你可以
这样做:
for i in range(-100,100,1):
a.append(i/10)
问题是您不能在 for 循环中使用浮点索引
你也可以这样做:
import numpy as np
a=np.arange(-10, 10, 0.1)