列表中有 Python 类型转换



我正在尝试在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)

最新更新