py23: add backport for math.isfinite (python >= 3.2)
This commit is contained in:
parent
4236772ec1
commit
2150ef875f
@ -308,6 +308,35 @@ except AttributeError:
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
|
try:
|
||||||
|
_isfinite = _math.isfinite # Python >= 3.2
|
||||||
|
except AttributeError:
|
||||||
|
_isfinite = None
|
||||||
|
_isnan = _math.isnan
|
||||||
|
_isinf = _math.isinf
|
||||||
|
|
||||||
|
|
||||||
|
def isfinite(f):
|
||||||
|
"""
|
||||||
|
>>> isfinite(0.0)
|
||||||
|
True
|
||||||
|
>>> isfinite(-0.1)
|
||||||
|
True
|
||||||
|
>>> isfinite(1e10)
|
||||||
|
True
|
||||||
|
>>> isfinite(float("nan"))
|
||||||
|
False
|
||||||
|
>>> isfinite(float("+inf"))
|
||||||
|
False
|
||||||
|
>>> isfinite(float("-inf"))
|
||||||
|
False
|
||||||
|
"""
|
||||||
|
if _isfinite is not None:
|
||||||
|
return _isfinite(f)
|
||||||
|
else:
|
||||||
|
return not (_isnan(f) or _isinf(f))
|
||||||
|
|
||||||
|
|
||||||
import decimal as _decimal
|
import decimal as _decimal
|
||||||
|
|
||||||
if PY3:
|
if PY3:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user