Olá,
Eu utilizei um código de teste muito semelhante ao que o professor expôs:
arquivo = open("palavras.txt", "r")
palavras = []
for linha in arquivo:
linha = arquivo.readline().strip()
palavras.append(linha)
arquivo.close()
print(palavras)
curiosamente, esta função tem retornado apenas as linhas pares do meu arquivo. Por que isso tem acontecido? Mesmo removendo a função strip, o resultado é o mesmo, retornando apenas as linhas pares incluindo o "\n" ao final.
Observei que no em um $cat palavras.txt a última palavra inclui um % ao final, isso significa fim do arquivo?
fyi: eu criei este arquivo "palavras.txt" via terminal e não com uma série de comandos "append" ou "write" no python. Além disso, print(arquivo.read()) exibe exatamente como meu arquivo se encontra. Isto é:
pretzel
maça
morango
rapaz
melancia