Python, Determine if a string should be converted into Int or Float

decimal-point, python, type-conversion

Solution

def isfloat(x):
    try:
        a = float(x)
    except (TypeError, ValueError):
        return False
    else:
        return True

def isint(x):
    try:
        a = float(x)
        b = int(a)
    except (TypeError, ValueError):
        return False
    else:
        return a == b

Problem

I want to convert a string to the tightest possible datatype: int or float. I have two strings: ``` value1="0.80" #this needs to be a float value2="1.00" #this needs to be an integer. ``` How I can determine that value1 should be Float and value2 should be Integer in Python?

Original source

Related problems