A manipulação de arquivos é crucial para a programação, pois permite armazenar e recuperar dados, tornando-os persistentes além da vida útil de um programa específico.
1. Introdução à Manipulação de Arquivos
Os arquivos são containers no computador onde as informações são armazenadas em formato digital. Podemos manipular dois tipos principais de arquivos em Python: arquivos de texto e arquivos binários.
2. Abrindo e Fechando Arquivos
Para manipular arquivos em Python, primeiro precisamos abri-los usando a função open(). Ao terminar, usamos a função close() para liberar recursos.
Modos de Abertura de Arquivo
r: Somente leitura.w: Gravação (sobrescreve o arquivo).a: Anexar (adiciona ao final do arquivo).
Exemplo de Código:
arquivo = open('exemplo.txt', 'r')
# Fechando o arquivo
arquivo.close()3. Lendo de um Arquivo
Python fornece várias maneiras de ler um arquivo:
read(): Lê o conteúdo inteiro.
# Lembre-se de alterar o caminho do arquivo, para o caminho completo da sua máquina!
arquivo = open(
"/home/usuario/Projetos/estudando-python/05 - Manipulação de arquivos/lorem.txt", "r"
)
print(arquivo.read())
arquivo.close()readline(): Lê uma linha por vez.
arquivo = open(
"/home/usuario/Projetos/estudando-python/05 - Manipulação de arquivos/lorem.txt", "r"
)
print(arquivo.readline())
arquivo.close()
readlines(): Retorna uma lista onde cada elemento é uma linha do arquivo.
arquivo = open(
"/home/usuario/Projetos/estudando-python/05 - Manipulação de arquivos/lorem.txt", "r"
)
print(arquivo.readlines())
arquivo.close()Usando loop:
arquivo = open(
"/home/usuario/Projetos/estudando-python/05 - Manipulação de arquivos/lorem.txt", "r"
)
# tip
while len(linha := arquivo.readline()):
print(linha)
arquivo.close()4. Escrevendo em um Arquivo
Para escrever em um arquivo, utilizamos write() ou writelines(), lembrando de abrir o arquivo no modo correto.
Exemplo de Código:
arquivo = open(
"/home/usuario/Projetos/estudando-python/05 - Manipulação de arquivos/teste.txt", "w"
)
arquivo.write("Escrevendo dados em um novo arquivo.")
arquivo.writelines(["\n", "escrevendo", "\n", "um", "\n", "novo", "\n", "texto"])
arquivo.close()Exemplo
Vamos criar um exemplo completo que envolve a criação de um arquivo txt, a escrita de uma lista de itens nele, e a leitura dos itens posteriormente.
Passo 1: Criando e Escrevendo em um Arquivo TXT
Primeiro, vamos criar uma lista de itens e escrever cada item em um novo arquivo lista_compras.txt.
Exemplo de Código:
# Lista de itens
lista_compras = ["Maçã", "Banana", "Leite", "Pão", "Ovos"]
# Abrindo o arquivo no modo de escrita
with open('lista_compras.txt', 'w') as arquivo:
# Escrevendo cada item da lista em uma nova linha do arquivo
for item in lista_compras:
arquivo.write(item + '\n')
print("Lista de compras salva com sucesso em 'lista_compras.txt'.")Passo 2: Lendo de um Arquivo TXT
Agora, vamos ler o conteúdo do arquivo lista_compras.txt e exibir cada item.
Exemplo de Código:
# Abrindo o arquivo no modo de leitura
with open('lista_compras.txt', 'r') as arquivo:
# Lendo todas as linhas do arquivo
linhas = arquivo.readlines()
# Exibindo cada item da lista de compras
print("Itens da lista de compras:")
for linha in linhas:
print(linha.strip())Explicação do Código
-
Escrita no Arquivo TXT:
- Criamos uma lista chamada
lista_comprascom alguns itens. - Abrimos o arquivo
lista_compras.txtno modo de escrita ('w'). Se o arquivo não existir, ele será criado. Se já existir, seu conteúdo será sobrescrito. - Usamos um loop
forpara iterar sobre cada item da lista e escrevê-los no arquivo, adicionando um caractere de nova linha ('\n') após cada item. - O bloco
withgarante que o arquivo será fechado corretamente após a escrita.
- Criamos uma lista chamada
-
Leitura do Arquivo TXT:
- Abrimos o arquivo
lista_compras.txtno modo de leitura ('r'). - Utilizamos o método
readlines()para ler todas as linhas do arquivo e armazená-las em uma lista chamadalinhas. - Iteramos sobre a lista
linhase usamosstrip()para remover o caractere de nova linha ('\n') ao exibir cada item.
- Abrimos o arquivo
Conclusão
Este exemplo ilustra como podemos criar e manipular arquivos de texto em Python para armazenar e recuperar dados. Essa técnica é fundamental para diversas aplicações, desde a simples persistência de dados até a manipulação de grandes volumes de informações em projetos mais complexos. Experimente adaptar este exemplo às suas necessidades específicas e explore outras funcionalidades da manipulação de arquivos em Python.