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.
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.:
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.