I would like to know a good way of checking if a number x is a rational (two integers n,m exist so that x=n/m) in python.
In Mathematica, this is done by the functio
In python >= 2.6 there is a as_integer_ratio method on floats:
>>> a = 6.75 >>> a.as_integer_ratio() (27, 4) >>> import math >>> math.pi.as_integer_ratio() (884279719003555, 281474976710656)
However, due to the way floats are defined in programming languages there are no irrational numbers.