我试图查看两点之间的计算距离是否小于给定半径,如下所示:
if distance(lat1, long1, lat2, long2) < radius:
print "Distance: %s Radius: %s" % (distance(lat1, long1, lat2, long2), radius)
这里distance
将有效地返回 afloat
并且radius
是 a int
。
我知道我不应该直接比较浮点数,而应该与阈值比较。鉴于此,是否有更好的方法来检查浮点数是否小于 int(或另一个浮点数)。
更新 从所有回复来看,这种比较似乎都还可以。但我确实观察到了这一点:
>>> 1.2000000000000001 > 1.2
True
>>> 1.20000000000000001 > 1.2
False
这不是问题吗?我在 Mac 上使用 Python 2.6.7