Programação

Como trabalhar com arquivos em Python

Como trabalhar com arquivos em Python

Python é uma linguagem de programação incrível para a maioria das tarefas, como desenvolvimento web, IA, automação ou programação geral. Trabalhar com arquivos e pastas é importante porque temos que usá-los para automatizar tarefas ou armazenar dados e várias outras tarefas semelhantes.

Para trabalhar com arquivos de formato especial, como arquivos de imagem, arquivos JSON, PDF, arquivos CSV ou arquivos de banco de dados, o python tem módulos incríveis escritos por grandes programadores para tornar nossa tarefa mais fácil. Você pode verificar nosso tutorial passo a passo sobre como trabalhar com arquivos de banco de dados SQL usando python, pelo qual você pode aprender SQLite, que é uma ótima maneira de armazenar e recuperar dados de programas python.

Antes de começar, precisamos primeiro ter o python instalado no sistema. Se você não o instalou, pode ver nosso guia de instalação de python.

Trabalho com arquivos em Python

Os arquivos são uma parte importante do nosso trabalho diário. Usamos arquivos PDF, arquivos Excel ou arquivos de texto normais para muitas tarefas. Os tutoriais que você está lendo neste site estão em um arquivo HTML que seu navegador processa. Como muitas outras linguagens de programação, Python também suporta manipulação de arquivos.

Abrindo e fechando arquivos

Podemos facilmente abrir um arquivo em python usando a função open () integrada. A função open aceita muitos argumentos, mas o principal argumento necessário é o caminho para o arquivo que queremos abrir. A função open () tem um único retorno, que é o objeto de arquivo.

file_obj = open ("nome do arquivo.TXT")

O código irá abrir o arquivo chamado “nome do arquivo.txt, ”um arquivo de texto presente na mesma pasta. Em seguida, ele armazenará o objeto de arquivo de retorno na variável file_obj.

Quando tivermos todo o processamento feito com o arquivo, precisamos nos lembrar do fechamento do arquivo. Um arquivo é fechado depois que o programa é encerrado em muitos casos, mas é bom fechá-lo usando a função close () sempre que não precisarmos dele. Se nos esquecermos de fechar um arquivo, ele simplesmente consumirá memória, o que tornará o programa mais lento. É considerada uma prática ruim para projetos maiores.

Para fechar um arquivo aberto, precisamos usar a função close () do objeto de arquivo.

# aqui vamos abrir o arquivo filename.txt file_obj = open ("nome do arquivo.txt ") print (" O arquivo foi aberto com sucesso… ") # Agora podemos fazer o processamento com o arquivo # Após o processamento, precisamos fechar o arquivo file_obj.close () print ("O arquivo foi fechado ...")

Abrimos um arquivo chamado nome do arquivo.TXT na mesma pasta usando a função open () e, em seguida, fechou-a usando a função close ().

Resultado:

abrindo e fechando arquivo

Embora a função close () seja útil para fechar um arquivo, há mais uma maneira de fechar um arquivo, i.e., abrindo o arquivo usando o com a declaração.

Exemplo:

com open ("nome do arquivo.txt ") as file_obj: # Aqui vão as operações de arquivo

O código fechará automaticamente o arquivo assim que sairmos do com quadra. A instrução with também fecha o arquivo se houver algum erro, então é melhor usar a instrução with já que podemos fechar o arquivo e lidar com os erros do arquivo facilmente usando-a.

Modos de abertura de arquivo

Embora a função open () possa ser usada com apenas um argumento, i.e., o caminho do arquivo, também podemos usar outro argumento chamado modo. Significa o modo que é usado para abrir o arquivo.

Por exemplo, se quisermos abrir o arquivo apenas para leitura e não quisermos editá-lo, podemos usar o modo 'r' como argumento para a função open (), que significa modo somente leitura. Este também é o modo padrão para a função open (). Para escrever ou modificar um arquivo, precisamos abrir o arquivo com o modo de escrita usando o 'w' como argumento.

Exemplo:

com open ("nome do arquivo.txt ", w"): # Aqui vão as declarações # a serem executadas no arquivo

Este código irá abrir o arquivo no modo de gravação para que você possa realizar operações de gravação no arquivo.

Também pode haver situações em que queremos abrir um arquivo em modo binário para realizar alguma operação nele. Para fazer isso, temos que usar o modo 'rb' para ler em modo binário e 'wb' para escrever em modo binário.

Exemplo:

com open ("nome do arquivo.dat "," rb "): # Aqui vão as instruções # a serem executadas no arquivo binário

Irá abrir um arquivo de dados chamado nome do arquivo.dat em modo binário apenas para leitura.

Até agora, aprendemos como abrir e fechar um arquivo. Agora vamos ver como podemos ler os dados do arquivo usando Python.

Lendo arquivos usando Python

Há muitas maneiras de ler dados de um arquivo aberto em python, mas a maneira mais comum é usando as funções read (), readline () e readlines ().

A função read ()

Ele aceita o número de bytes a serem lidos do arquivo como um argumento e lê essa quantidade de bytes do arquivo.

Se não fornecermos nenhum argumento ou usarmos Nenhum ou -1 como argumento para a função read (), todo o arquivo será lido no modo somente leitura.

Exemplo:

com open ("nome do arquivo.txt ") as file_obj: # usando a função read () para ler bytes # do objeto de arquivo words = file_obj.ler () imprimir (palavras)

Resultado:

ler dados do arquivo usando a função read ()

Pode ser necessário criar o nome do arquivo de amostra.txt com conteúdo demo ou especifique outros arquivos no argumento da função open () antes de executar o programa; caso contrário, o python lançará FileNotFoundError como mostrado abaixo.

Traceback (última chamada mais recente): Arquivo "arquivo.py ", linha 1, com open (" nome do arquivo.txt ") as file_obj: FileNotFoundError: [Errno 2] Não existe esse arquivo ou diretório: 'nome do arquivo.TXT'

A função read () é uma maneira incrível de ler bytes do arquivo, mas existem outras maneiras de ler dados de um arquivo. Principalmente, existem dois outros métodos para ler dados de um arquivo. Eles são os métodos readline () e readlines ().

A função readline ()

A função readline () é usada para ler uma linha por vez. Cada vez que o executarmos, obteremos a próxima linha do arquivo.

Exemplo:

com open ("nome do arquivo.txt "," r ") como fileobj: print (fileobj.readline ()) # imprime a primeira linha imprime (fileobj.readline ()) # imprime a segunda linha

Saída: obteremos a primeira e a segunda linha do arquivo impresso.

ler dados usando a função readline ()

Também podemos passar o número de caracteres para ler de uma linha como um argumento para a função readline ().

Exemplo:

com open ("nome do arquivo.txt "," r ") como fileobj: print (fileobj.readline (15)) # imprime os primeiros 15 bytes

Resultado:

especificando o número de caracteres na função readine ()

A função readlines ()

A função readlines () é usada para ler todas as linhas de um arquivo. Esta função irá retornar uma lista de todas as linhas presentes no arquivo. Se não precisarmos executar todas as linhas, também podemos especificar o número de linhas que precisamos como argumento.

Exemplo:

com open ("nome do arquivo.txt "," r ") como fileobj: print (fileobj.readlines ()) # retorna uma lista de todas as linhas

Resultado:

função readlines ()

Gravando arquivos usando Python

Para escrever dados em um arquivo usando python, precisamos usar o método write () do objeto de arquivo. A função de gravação aceita os dados como um argumento que queremos escrever no arquivo.

Exemplo:

line = "Esta é uma nova linha \ n" com open ("nome do arquivo.txt "," w ") como fileobj: print (fileobj.escrever (linha))

Ao executar o código, todos os nome do arquivo.TXT os dados serão substituídos pela string “Esta é uma nova linha”. Se você não tem o nome do arquivo.TXT arquivo presente anteriormente, ele criará um.

Anexando arquivos

Ao escrever um arquivo como fizemos no código anterior, você pode notar que os novos dados substituem todos os dados anteriores presentes no arquivo. Às vezes, somos obrigados apenas a anexar os novos dados em vez de reescrever os dados. Precisamos abrir o arquivo usando o modo “a” e, em seguida, usar a função write () para escrever os dados.

Exemplo:

line = "\ nEsta é uma nova linha" com open ("nome do arquivo.txt "," a ") como fileobj: print (fileobj.escrever (linha))

Teremos uma nova linha escrita no arquivo filename.txt sem substituir as linhas anteriores ao executar o código.

Renomeando e Excluindo Arquivos

Para renomear um arquivo, precisamos usar a função rename () do módulo os. A função renomear aceita dois argumentos importantes, o primeiro argumento é o caminho para o arquivo que queremos renomear e o outro argumento é o novo nome do arquivo original.

Exemplo:

importar os so.renomear ("arquivo1.txt, arquivo2.TXT")

O código irá renomear o arquivo arquivo1.TXT com o nome arquivo2.TXT.

Para excluir um arquivo usando python, precisamos usar o remover() função do os módulo.

Exemplo:

importar os so.remove ("amostra.TXT")

Isso irá deletar o arquivo amostra.TXT presente no diretório atual. Você também pode fornecer o caminho do arquivo se ele estiver presente em outros diretórios. Se o arquivo não existir no caminho fornecido, obteremos um FileNotFoundError. Use o método de tratamento de exceções descrito no subtópico anterior para lidar com os erros.

Conclusão

Neste tutorial, aprendemos tudo o que é necessário para trabalhar com arquivos em python, como criar arquivos, ler dados de arquivos, gravar dados em arquivos, remover e renomear arquivos, etc.

Você também pode consultar nosso guia passo a passo sobre como trabalhar com banco de dados SQLite em python, onde você pode aprender tudo o que precisa saber enquanto trabalha com bancos de dados SQLite em python.

Como aumentar o FPS no Linux?
FPS significa Quadros por segundo. A tarefa do FPS é medir a taxa de quadros em reproduções de vídeo ou desempenho de jogos. Em palavras simples, o nú...
Top jogos do Oculus App Lab
Se você é proprietário de um fone de ouvido Oculus, deve estar informado sobre o carregamento lateral. Sideload é o processo de instalação de conteúdo...
Os 10 melhores jogos para jogar no Ubuntu
A plataforma Windows tem sido uma das plataformas dominantes para jogos devido à grande porcentagem de jogos que estão sendo desenvolvidos hoje para o...