我对abs()和fabs()函数进行了一些简单的测试,我不知道使用fabs()有什么好处,如果它是:
1)慢一点
2)仅在浮子上工作
3)如果在其他类型上使用,将引发异常In [1]: %timeit abs(5)
10000000 loops, best of 3: 86.5 ns per loop
In [3]: %timeit fabs(5)
10000000 loops, best of 3: 115 ns per loop
In [4]: %timeit abs(-5)
10000000 loops, best of 3: 88.3 ns per loop
In [5]: %timeit fabs(-5)
10000000 loops, best of 3: 114 ns per loop
In [6]: %timeit abs(5.0)
10000000 loops, best of 3: 92.5 ns per loop
In [7]: %timeit fabs(5.0)
10000000 loops, best of 3: 93.2 ns per loop
在漂浮物上更慢!
从我的观点来看,使用fabs()的唯一好处是使您的代码更可读,因为通过使用它,您可以清楚地说明使用float/double point值的意图
fabs()还有其他用途吗?