Lendo e Escrevendo Arquivos de Texto em Python

Um dos recursos mais úteis do Python é a possibilidade de ler e escrever arquivos de texto de forma simples e prática. Isso permite armazenar informações, processar dados externos e até automatizar tarefas do dia a dia.

Neste guia, você vai aprender:

  1. Como funciona o open() em Python.

  2. Modos de abertura de arquivos (rwar+).

  3. Lendo arquivos com read()readline() e readlines().

  4. Escrevendo arquivos com write() e writelines().

  5. Boas práticas com with open().

  6. Exemplos práticos de leitura e escrita.

  7. 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 (r significa "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:

ModoFunçã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:

  1. Peça ao usuário para digitar 5 tarefas.

  2. Salve essas tarefas em um arquivo tarefas.txt.

  3. 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 (rwar+).

  • Como ler (readreadlinereadlines) e escrever (writewritelines).

  • 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

Postagens mais visitadas deste blog

Laços de Repetição em Python: Conceitos e Exemplos Práticos

Manipulação de Arquivos no C#: Como Ler, Escrever e Trabalhar com Arquivos de Forma Simples

Como Instalar o Xamarin com C#: Passo a Passo Completo