np.arange产生具有许多小数的元素



我有以下循环。

x_array = []
for x in np.arange(0.01, 0.1, 0.01 ):

x_array.append(x)

为什么x_array中的一些元素有这么多小数?

[0.01,
0.02,
0.03,
0.04,
0.05,
0.060000000000000005,
0.06999999999999999,
0.08,
0.09]

如果您希望您的数字列表中没有"附加的";中的数字分数部分,请尝试以下代码:

x_array = np.arange(0.01, 0.1, 0.01).round(2).tolist()

正如您所看到的,您甚至不需要任何显式循环。

结果正是您想要的,即:

[0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09]

另一种选择是:

x_array = (np.arange(1, 10) / 100).tolist()

最新更新