Python的浮点数 __str__ 方法的小问题
今天 康神 发现一个浮点数的问题,一个class里面有两个浮点(double) 成员x、y,然后用return (self.x, self.y).__str__() 返回时,发现输出是 (39.210279999999997, 116.34528) 而不是希望的 (116.345280, 39.210280)。
查了一下,改成return “(%f, %f)” % (self.x, self.y) 解决。C里面printf的 %f默认显示小数点后面6位,但是 __str__ 似乎自己对于浮点数精度有些想法?没看Python具体的实现。