Lendo e Escrevendo Arquivos de Texto em Python
Neste guia, você vai aprender:
Como funciona o
open()em Python.Lendo arquivos com
read(),readline()ereadlines().Escrevendo arquivos com
write()ewritelines().Boas práticas com
with open().Exemplos práticos de leitura e escrita.
Pequeno exercício para praticar.
1. O que é o open()?
A função open() é usada para abrir um arquivo no Python.
Ela precisa de pelo menos dois argumentos:
arquivo = open("exemplo.txt", "r")
"exemplo.txt"→ nome do arquivo (ou caminho completo)."r"→ modo de abertura (rsignifica "read", ou leitura).
Sempre que você abre um arquivo, o Python cria um objeto de arquivo que pode ser manipulado.
2. Modos de abertura de arquivos
O segundo argumento do open() define o que você quer fazer com o arquivo:
| Modo | Função |
|---|---|
"r" | Leitura (padrão). Erro se o arquivo não existir. |
"w" | Escrita. Cria um novo arquivo ou sobrescreve o existente. |
"a" | Append (adicionar conteúdo ao final do arquivo). |
"r+" | Leitura e escrita no mesmo arquivo. |
"x" | Criação. Gera erro se o arquivo já existir. |
Exemplo:
# Criar ou sobrescrever um arquivo
arquivo = open("dados.txt", "w")
3. Lendo arquivos
Ler tudo de uma vez com read()
with open("texto.txt", "r", encoding="utf-8") as f:
conteudo = f.read()
print(conteudo)
Isso lê todo o conteúdo de uma vez. Ideal para arquivos pequenos.
Ler linha por linha com readline()
with open("texto.txt", "r", encoding="utf-8") as f:
linha1 = f.readline()
linha2 = f.readline()
print(linha1)
print(linha2)
Útil quando você quer processar o arquivo linha a linha.
Ler todas as linhas em lista com readlines()
with open("texto.txt", "r", encoding="utf-8") as f:
linhas = f.readlines()
print(linhas)
Exemplo de saída:
['Primeira linha\n', 'Segunda linha\n', 'Terceira linha\n']
Iterar diretamente no arquivo
with open("texto.txt", "r", encoding="utf-8") as f:
for linha in f:
print(linha.strip()) # strip remove espaços e quebras de linha
Essa é a forma mais eficiente para ler arquivos grandes.
4. Escrevendo arquivos
Usando write()
with open("saida.txt", "w", encoding="utf-8") as f:
f.write("Olá, mundo!\n")
f.write("Segunda linha\n")
⚠ Atenção: com "w", o arquivo é sobrescrito sempre que aberto.
Usando writelines()
linhas = ["Primeira linha\n", "Segunda linha\n", "Terceira linha\n"]
with open("saida.txt", "w", encoding="utf-8") as f:
f.writelines(linhas)
Esse método escreve uma lista de strings de uma vez.
Usando a (append) para adicionar sem apagar
with open("saida.txt", "a", encoding="utf-8") as f:
f.write("Nova linha adicionada!\n")
Esse modo não apaga o que já existe.
5. Boas práticas com with open()
Sempre que possível, use a sintaxe:
with open("arquivo.txt", "r", encoding="utf-8") as f:
conteudo = f.read()
✅ Vantagens:
O arquivo é fechado automaticamente (não precisa
f.close()).Código mais limpo e seguro.
6. Exemplos práticos
Exemplo 1: Lendo e mostrando nomes de um arquivo
Arquivo nomes.txt:
Ana
Carlos
Fernanda
João
Código:
with open("nomes.txt", "r", encoding="utf-8") as f:
for linha in f:
print("Nome:", linha.strip())
Saída:
Nome: Ana
Nome: Carlos
Nome: Fernanda
Nome: João
Exemplo 2: Gravando resultados de um programa
resultados = ["Aprovado\n", "Reprovado\n", "Aprovado\n"]
with open("resultados.txt", "w", encoding="utf-8") as f:
f.writelines(resultados)
print("Arquivo salvo com sucesso!")
Exemplo 3: Criando um log de execução
import datetime
with open("log.txt", "a", encoding="utf-8") as f:
f.write(f"Programa executado em {datetime.datetime.now()}\n")
Cada vez que rodar, será adicionada uma nova linha ao log.txt.
7. Exercício para praticar
Crie um programa que:
Peça ao usuário para digitar 5 tarefas.
Salve essas tarefas em um arquivo
tarefas.txt.Leia o arquivo e mostre todas as tarefas na tela.
Conclusão
Trabalhar com arquivos de texto em Python é fundamental para armazenar informações, processar dados externos ou criar relatórios.
Você aprendeu:
Como abrir arquivos com
open().Os diferentes modos de abertura (
r,w,a,r+).Como ler (
read,readline,readlines) e escrever (write,writelines).A importância do
with open()para fechar arquivos automaticamente.
Com isso, você já pode criar programas que salvam dados, processam listas, mantêm históricos ou até geram logs de execução.

Comentários
Postar um comentário