Como ler um arquivo grande, linha por linha, em Python

Eu quero iterar sobre cada linha de um arquivo inteiro. Uma maneira de fazer isso é lendo o arquivo inteiro, salvando-o em uma lista e passando pela linha de interesse. Este método usa muita memória, então estou procurando uma alternativa.

Meu código até agora:

for each_line in fileinput.input(input_file):
    do_something(each_line)

    for each_line_again in fileinput.input(input_file):
        do_something(each_line_again)

Executar este código dá uma mensagem de erro:device active.

Alguma sugestão

O objetivo é calcular a similaridade de string em pares, ou seja, para cada linha do arquivo, desejo calcular a distância de Levenshtein com todas as outras linha

questionAnswers(10)

yourAnswerToTheQuestion