Como ler um caractere de cada vez em um arquivo em python?

Quero ler uma lista de números de um arquivo como caracteres, um caractere de cada vez, para verificar o que é esse caractere, seja um dígito, um período, um + ou -, um e ou E, ou algum outro caractere. ..e, em seguida, execute qualquer operação que eu queira com base nisso. Como posso fazer isso usando o código existente que já tenho? Este é um exemplo que eu tentei, mas não funcionou. Eu sou novo no python. Desde já, obrigado!

    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))

questionAnswers(3)

yourAnswerToTheQuestion