为什么下面的代码不会导致step=0.1
?我猜这和浮点精度有关,但是如何用正确的方法呢?你知道吗
import numpy as np
lastprice = 3779
binsize = 0.1
minbin = round(lastprice*0.25, 0) - binsize/2
maxbin = round(lastprice/0.25, 0) + binsize/2
bincount = int((maxbin-minbin) / binsize)
bins, steps = np.linspace(minbin, maxbin, num=bincount, retstep=True, endpoint=False)
print(minbin)
print(maxbin)
print(round((maxbin-minbin),0))
print(bincount)
print(steps)
print(bins)
上述结果产生以下输出:
944.95
15116.05
14171.0
141710
0.100000705666502
[ 944.95 945.05000071 945.15000141 ... 15115.74999788 15115.84999859 15115.94999929]
目前没有回答
相关问题 更多 >
编程相关推荐