def is_float(string):
    """
    Checks if a string can be converted to a float
    :param str string: a string of any kind
    :return: True if its possible, False if not
    :rtype: bool
    """
    # ! why exactly i am writing such kind of functions all the time? Do i lack the vision to see the build ins?
    try:
        float(string)
        return True
    except ValueError:
        return False