python 浮点数判断
最近犯了一个错误,在用pandas处理数据的时候发现float64数据貌似不能直接使用==判断相等。
想着是不是浮点数精度的问题导致的,于是改成了abs(x - y) < 1e-6的形式果然就可以了
原因很简单,本来应该相等的两个浮点数由于计算机内部表示的原因可能略有微小的误差,这时用==就会认为它们不等。
还是python本身基础不牢靠的问题。
最近犯了一个错误,在用pandas处理数据的时候发现float64数据貌似不能直接使用==判断相等。
想着是不是浮点数精度的问题导致的,于是改成了abs(x - y) < 1e-6的形式果然就可以了
原因很简单,本来应该相等的两个浮点数由于计算机内部表示的原因可能略有微小的误差,这时用==就会认为它们不等。
还是python本身基础不牢靠的问题。