Arquivos
Um arquivo é um conjunto de dados na memória externa que tem um nome.
Existem dois tipos de arquivos em Python:
-
texto, que contém texto quebrado em uma linha; Dos caracteres especiais em arquivos de texto, só pode haver caracteres de nova linha ("
\n
") e retornar ao início da linha ("
\r
" ;);
-
binário, que armazena quaisquer dados binários sem restrições (por exemplo, imagens, sons, vídeos, etc.).
A seguir, consideraremos o trabalho com arquivos de texto.
O princípio de trabalhar com um arquivo do programa
Consiste em três etapas:
1. abrindo um arquivo;
2. trabalhe com o arquivo;
3. fechando o arquivo.
Este princípio de operação é chamado de
"princípio do sanduíche"..
Ao abrir um arquivo, é indicado o modo de operação: leitura, escrita ou anexação de dados ao final do arquivo. O arquivo aberto está bloqueado e outros programas não podem acessá-lo. Depois de trabalhar com o arquivo, você deve fechá-lo para interromper a conexão com o programa. Quando um arquivo é fechado, todas as alterações feitas pelo programa nesse arquivo são gravadas no disco. Python trabalha com arquivos por meio de variáveis de arquivo.
A função
open()
permite
abrir um arquivo e retorna uma variável de arquivo que pode ser usada para acessar o arquivo.
f = open(file_name, access_mode)
,
onde:
-
file_name
- nome do arquivo a ser aberto
-
access_mode
- modo de abertura de arquivo. Pode ser: ler, escrever, etc. O modo padrão é ler (r), salvo indicação em contrário.
Lista completa de modos de abertura de arquivo
Modo |
Descrição |
r |
Somente leitura. |
w |
Somente gravável. Irá criar um novo arquivo se não for encontrado com o nome especificado. |
rb |
Somente leitura (binário). |
wb |
Somente gravação (binário). Irá criar um novo arquivo se não for encontrado com o nome especificado. |
r+ |
Para ler e escrever. |
rb+ |
Para leitura e escrita (binário). |
w+ |
Para ler e escrever. Irá criar um novo arquivo gravável se não for encontrado com o nome especificado. |
wb+ |
Para leitura e escrita (binário). Irá criar um novo arquivo gravável se não for encontrado com o nome especificado. |
a |
Abre para adicionar novo conteúdo. Irá criar um novo arquivo gravável se não for encontrado com o nome especificado. |
a+ |
Abre para adicionar novo conteúdo. Irá criar um novo arquivo para ler a entrada se não for encontrado com o nome especificado. |
ab |
Abre para adicionar novo conteúdo (binário). Irá criar um novo arquivo gravável se não for encontrado com o nome especificado. |
ab+ |
Abre para adicionar novo conteúdo (binário). Irá criar um novo arquivo para ler a entrada se não for encontrado com o nome especificado. |
O método
close()
permite que você
feche um arquivo.
Exemplo
Fin = open("input.txt")
Fout = open("output.txt")
# fazer algo com arquivos
fout.close()
Fin.close()
Se um arquivo existente for aberto para gravação, seu conteúdo será destruído. Após o término do programa, todos os arquivos abertos são fechados automaticamente.