Gravar dados no arquivo
O método
write()
é usado para gravar dados em um arquivo. Os dados numéricos devem ser convertidos em uma string. Isso pode ser feito com o método
format()
ou com o método
str()
.
Arquivos de múltiplas linhas
Ao trabalhar com arquivos de várias linhas, você precisa saber quando os dados do arquivo acabam. Para fazer isso, você pode usar o recurso dos métodos
readline()
: se o cursor do arquivo apontar para o final do arquivo, o método
readline()
retornará um string vazia, que é percebida como um valor booleano falso:
enquanto verdadeiro:
s = Fin.readline()
se não s: break # se uma string vazia for recebida ao ler uma string,
# o loop termina com uma instrução break
print(s, end="") # desabilita a nova linha, pois ao ler uma linha de um arquivo
# caractere de nova linha "\n" salvo
Outras formas de ler dados de arquivos multilinha
1. Imediatamente todos os dados da lista.
Fin = open("input.txt")
list_strings = Fin.readlines()
# lê todas as linhas de uma vez
Fin.close()
para s em list_strings:
print(s, end="")
2. Usando a construção with-as
. Neste caso, o arquivo é fechado automaticamente após o término do ciclo.
com open("input.txt") como Fin:
para s em Fin:
print(s, end="")
Essa construção garante que o arquivo seja fechado.
3. Uma forma de iterar sobre strings no estilo da linguagem Python (recomenda-se usar este método). Nesse caso, o arquivo também é fechado automaticamente.
para s em open("input.txt"):
print(s, end=""")