Como criar e ler arquivos .txt com Python

Alex Barros
4 min readJul 18, 2022

Aprenda a criar arquivos para armazenar logs ou leia arquivos para análise de dados.

Neste artigo iremos aprender a criar arquivos .txt e a ler o seu conteúdo utilizando Python. É muito comum utilizarmos arquivos para carregar dados para uma aplicação, especialmente quando a base de dados não é tão grande.

Utilizando a função open( ) para criar um novo arquivo de texto

Para criar um novo arquivo texto, você pode utilizar a função open(). Neste exemplo você precisa utilizar apenas dois parâmetros:

f = open(path, modo)

Nessa sintaxe o parâmetro path especifica o caminho/diretório onde o arquivo será criado e o nome do arquivo.

Para criar um novo arquivo, utilize um dos seguintes modos:

‘w’ — Caso o arquivo não exista, um arquivo novo será criado. Caso contrário, o contéudo do arquivo antigo será sobrescrito. Ou seja, CUIDADO!

‘x’ — abre um arquivo para escrita, mas não sobrescreve caso já exista um arquivo com o mesmo nome. Esse modo lança uma exceção FileExistsError caso já exista um arquivo com o nome solicitado..

O trecho acima cria um arquivo chamado primeiro_teste.txt e com o contéudo de texto: “primeiro arquivo criado”. Para adicionar conteúdo no arquivo utilize o método write.

Novo arquivo criado e o seu conteúdo

Utilizando o modo x (exclusive), criamos um arquivo da mesma maneira que o modo w (write):

A diferença é que em uma segunda execução do mesmo código, ocorria um erro como na imagem abaixo. Esse modo(x) não permite sobrescrever um arquivo quando ele já existe. Caso estivéssemos utilizando o modo ‘w’, o arquivo anterior seria sobrescrito.

Criando subdiretórios ou pastas para organizar os arquivos

Para criar pastas, precisamos utilizar a biblioteca ‘os’ e o método mkdir.
Há a necessidade de passar todo o caminho da nova pasta.

Criar novas pastas ou subdiretórios é sempre necessário para organizar os arquivos gerados:

Para criar arquivos dentro da pasta ‘arquivos’ precisamos passar o endereço completo para a função open. No exemplo abaixo criamos um arquivo com o nome arquivo1.txt, depois sobrescrevemos o seu conteúdo. Ao tentar criar o arquivo pela terceira vez já com o modo ‘x’ (exclusive), obteremos o erro FileExistsError. Por isso tome muito cuidado ao utilizar o modo ‘w’ repetidamente, correrá o risco de sobrescrever o conteúdo dos arquivos e perder informações.

Você pode adicionar a quantidade de dados que precisar em um arquivo, basta usar várias vezes o método write, no exemplo abaixo gravamos 5 linhas no arquivo1.txt .

Lendo arquivos

Para ler um arquivo texto em utilizando python precisamos seguir as etapas:

1 -abrimos o arquivo texto para leitura utilizando a função open().
2- utilizamos os métodos read(), readline() ou readlines().
3- fechamos o arquivo utilizando o método close().

Existem basicamente 3 métodos de ler o conteúdo de arquivos de texto:

  • read() — lê todo o texto de um arquivo para uma string. Esse método é útil se você tiver um arquivo pequeno e deseja manipular o texto todo desse arquivo.
  • readline() — lê o arquivo de texto linha por linha e retorna o conteúdo da linha como string.
  • readlines() — lê todas as linhas do arquivo de texto e retorna como uma lista de strings.

O método read já conhecemos. No exemplo abaixo temos o readlines( ), onde todas as linhas são salvas em uma lista de strings. Cada elemento da lista armazena uma linha do arquivo.

Lista de strings com o conteúdo do arquivo:

Já o método readline( ) lê uma linha por vez. Sendo necessário executá-lo várias vezes para consumir todo o conteúdo do arquivo.

Quando não há mais dados para serem lidos, o readline( ) retorna False. Por isso o loop While que utilizamos é finalizado.

Acesso o Google Colab e teste esses exemplo no Notebook.

Para mais conteúdo acesse www.aprendadatascience.com ou no Instagram.

Sign up to discover human stories that deepen your understanding of the world.

Alex Barros
Alex Barros

Written by Alex Barros

Engenheiro da Computação. Mestre e Doutorando em Computação Aplicada. Coordenador do Escritório de Projetos e Processos no TRT8.

No responses yet

Write a response