numpy中两个array数值比较,在IDE中显示完全相同,但是bool判断两个array是否相等却返回False

numpy踩坑:两个array中数值分别比较,在IDE显示相同,但是bool判断两个array是否相等值却是False

在numpy数据比较时,在IDE显示完全相同但是比较是否相等却有时候返回False?
原因出在了精度显示上面,在代码开始前使用了抑制精度显示:

np.set_printoptions(precision=3) # 可以设置显示精度
np.set_printoptions(suppress=True)  # 抑制小数的科学计数法显示

难怪看运行结果完全一样,一比较两个array的值却发现有些的不想等
抑制小数点显示,但是实际上小数点还是存在的

正确查看浮点数数值的方法需要取出array中的数值显示,不要以array的整体形式显示:
例如:将
array == array
更改为:
array[0] == array[0]
比较结果
要忽略后面的小数点,使用np.round(),如np.round(array, 2)保留两位小数
于是得到:
比较结果是否相等
在验证array数据时遇到的坑,没有查到,故写下来记录,也许能帮到一些人

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值