def is_float(number):
    """
    function to determine if the input value can be converted into a float
    by using the try/except technique, filtering out True and 'NaN' (which can be converted to floats)

    :param number: the value to test
    :return: True/False
             if True, the value can be converted to a float
             if False, the value cannot be converted to a float
    """
    try:
        n = str(number)
    except ValueError:
        return False
    except TypeError:
        return False
    false_floats = str(True), str(False), str(None), 'Nan'
    if n in false_floats:
        return False
    try:
        float(number)
        return True
    except ValueError:
        return False
    except TypeError:
        return False
