如何解决在使用np.arange时,它以错误的步长递增
for i in np.arange(0.0,1.1,0.1):
print(i)
输出:
0.0
0.1
0.2
0.30000000000000004
0.4
0.5
0.6000000000000001
0.7000000000000001
0.8
0.9
1.0
预期输出:
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
解决方法
它没有以错误的步长递增,这只是浮点错误。来自here:
这可以视为Python中的错误,但事实并非如此。这与Python无关,而与底层平台如何处理浮点数有关。在系统内部内部处理浮点数时,通常会遇到这种情况。这是当浮点数的内部表示形式(使用固定数量的二进制数字表示十进制数字)时引起的问题。很难用二进制表示某个十进制数,因此在许多情况下,它会导致较小的舍入误差。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。