Lendo e escrevendo arquivos em Python

Eu estou escrevendo um script que tem duas entradas:

um arquivo contendo uma lista de nomes,um arquivo diferente (pode estar vazio ou não vazio)

O objetivo do script é pegar os nomes do primeiro arquivo, acessar uma determinada API e obter informações sobre cada nome e, em seguida, gravar essas informações no segundo arquivo. Se o segundo arquivo já contiver informações, o script lerá a última linha do arquivo gravado, localizará essa entrada no primeiro arquivo e, em seguida, iniciará a partir dessa entrada. Estou tendo problemas, no entanto, quando se trata de ler e gravar no segundo arquivo.

Quando eu definir o segundo tipo de arquivo para "r +" e, em seguida, fazer uma impressão em file_two.read (), ele mostra o conteúdo do segundo arquivo. Quando faço outra impressão na linha seguinte, mostra o arquivo como vazio. Além disso, quando defino o tipo de arquivo como "a +", ele mostra o arquivo completamente vazio nas duas vezes, embora eu possa ver claramente que as informações no arquivo de texto estão realmente lá. Alguém sabe o que está acontecendo?

Aqui está o segmento de código que lida com a escrita:

<code>def write_to_file(filename, users):
    pages = range(0, len(users) - 100, 100)
    for page in pages:
        user_names = get_users(users[page: page+100])
        lines = [format_user(user) for user in user_names]
        output_text = '\n'.join(lines)
        with filename as output_file:
            output_file.write(output_text.encode('utf-8'))
</code>

e aqui está o segmento de código que chama a função acima.

<code>file_one = args.file1
file_two = args.file2
users = read_names_automatic(file_one)
write_to_file(file_two, users)
</code>

questionAnswers(1)

yourAnswerToTheQuestion