¿Cómo leer un carácter a la vez de un archivo en Python?

Quiero leer en una lista de números de un archivo como caracteres un carácter a la vez para verificar qué es ese carácter, ya sea un dígito, un punto, un + o -, una e o E, o algún otro carácter. ..y luego realizar cualquier operación que quiera en función de eso. ¿Cómo puedo hacer esto usando el código existente que ya tengo? Este es un ejemplo que he intentado, pero no funcionó. Soy nuevo en python. ¡Gracias por adelantado!

    import sys

    def is_float(n):
        state = 0
        src = ""
        ch = n
        if state == 0:
            if ch.isdigit():
                src += ch
                state = 1
                ...

    f = open("file.data", 'r')
    for n in f:
        sys.stdout.write("%12.8e\n" % is_float(n))

Respuestas a la pregunta(3)

Su respuesta a la pregunta