from decimal import Decimal
#any decmail would work. Probably a more eloquent way but this works
if type(r) == type(Decimal('3.14159')):
#do something
a = 2.3
if a//1 == a/1:
# it does not have decimal values
else:
# otherwise it does
i = 100
f = 1.23
print(type(i))
print(type(f))
# <class 'int'>
# <class 'float'>
Check if object is int or float: isinstance()
Check if float is integer: is_integer()
Check if numeric string is integer:
def is_integer(n):
try:
float(n)
except ValueError:
return False
else:
return float(n).is_integer()