Introdução

Uma das razões pelas quais o Python se popularizou foi a facilidade de programar utilizando essa linguagem. A manipulação de arquivos em Python não é diferente. Os criadores se preocuparam em disponibilizar aos desenvolvedores o que realmente importa! Com nome de métodos intuitivos, como read (ler) e write (escrever), e tratamentos de exceções específicas para cada problema, o Python disponibiliza uma simples e poderosa forma de trabalhar com arquivos. Neste conteúdo, veremos como manipulá-los de forma correta, garantindo que o programa rode sem problemas.

É muito comum ajustarmos e prepararmos um texto antes de incluí-lo em um arquivo. Ajustes como remover espaço em branco, colocar todas as letras maiúsculas, substituir palavras e adicionar conteúdo de variável são alguns exemplos. Esses ajustes podem ser realizados a partir de métodos de manipulação de strings, que também serão tratados adiante.


1 - Funções de manipulação de arquivos: Operações Básicas

Abrir um Arquivo

Para abrir um arquivo, o Python disponibiliza a função interna chamada open. Essa função está disponível globalmente, ou seja, não é preciso importá-la. A função open retorna um objeto do tipo arquivo. Sua forma mais simples de utilização tem a seguinte sintaxe: arquivo = open (caminho)

Veja como o Python trata o acesso aos arquivos a seguir. O caminho de um arquivo pode ser classificado em dois tipos:

<aside> 🗨️ Caminho Absoluto

É a referência completa para se encontrar um arquivo ou diretório. Ele deve começar com uma barra ( / ) ou o rótulo do drive ( C:, D: ...).

Exemplo:

open(“C:\\Downloads\\arquivo.txt”) → utilizado em ambiente Windows. open(“/home/usuario/arquivo.txt”) → utilizado em ambiente Linux.

</aside>

<aside> 🗨️ Caminho Relativo

É a referência para se encontrar um arquivo ou diretório a partir de outro diretório. Normalmente, a partir do diretório de onde o script está.

Exemplo:

open(“arquivo.txt”) → para os casos em que o arquivo está no mesmo diretório do script. open(“../arquivo.txt”) → para os casos em que o arquivo está no diretório acima do script.

</aside>

O Python também disponibiliza algumas funções para exibir os caminhos absolutos e relativos de um arquivo ou diretório, que são:

path.relpath → para obter o caminho relativo do arquivo em questão.

Ex.:

path.abspath → para obter o caminho absoluto do arquivo em questão.

Ex.:

Modos de Acesso a um arquivo

Existem várias maneiras de acessar um arquivo em Python, mas as três mais comuns são:

Modo de Leitura (Read Mode): Abre um arquivo para leitura e retorna um objeto de arquivo. Isso permite que você leia o conteúdo do arquivo

with open('arquivo.txt', 'r') as f:
    conteudo = f.read()

Modo de Gravação (Write Mode): Abre um arquivo para gravação e retorna um objeto de arquivo. Isso permite que você escreva no arquivo e, se o arquivo não existir, ele será criado.

with open('arquivo.txt', 'w') as f:
    f.write('conteudo a ser gravado')

Modo de Anexação (Append Mode): Abre um arquivo para anexar dados e retorna um objeto de arquivo. Isso permite que você adicione novos dados ao final do arquivo sem apagar o conteúdo existente.

with open('arquivo.txt', 'a') as f:
    f.write('conteudo a ser adicionado')

O modo padrão da função open é o modo leitura (“r”). Esses modos podem ser combinados e para informar que desejamos ler e escrever em um arquivo, utilizamos a string “r+”, por exemplo.