DEV Community

Francisco Júnior
Francisco Júnior

Posted on

Manipulação de Arquivos e Exceções em Python

A manipulação de arquivos e o tratamento de exceções são tópicos fundamentais na programação em Python. Neste artigo, exploraremos como trabalhar com arquivos, realizar operações de leitura e escrita e como gerenciar exceções para lidar com erros de forma eficaz.

Leitura e Escrita de Arquivos

Python oferece recursos poderosos para ler e escrever em arquivos. Você pode criar, abrir, ler, escrever e fechar arquivos facilmente. Abaixo, veremos os conceitos básicos de leitura e escrita de arquivos.

Leitura de Arquivos

Para ler um arquivo, você pode usar a função open() com o modo de leitura ("r") e, em seguida, ler o conteúdo do arquivo com os métodos read(), readline() ou readlines().

Exemplo de leitura de arquivo:

# Abrir um arquivo para leitura with open("exemplo.txt", "r") as arquivo: conteúdo = arquivo.read() print(conteúdo) 
Enter fullscreen mode Exit fullscreen mode

Escrita de Arquivos

Para escrever em um arquivo, use a função open() com o modo de escrita ("w") e, em seguida, escreva o conteúdo no arquivo usando o método write().

Exemplo de escrita em arquivo:

# Abrir um arquivo para escrita with open("novo_arquivo.txt", "w") as arquivo: arquivo.write("Este é um novo arquivo.\n") arquivo.write("Com várias linhas.") 
Enter fullscreen mode Exit fullscreen mode

Lembre-se de que o uso da instrução with garante que o arquivo seja fechado automaticamente após o término do bloco, evitando vazamentos de recursos.

Gerenciamento de Exceções

O gerenciamento de exceções é essencial para lidar com erros durante a execução de um programa. Python oferece uma maneira elegante de lidar com exceções usando as palavras-chave try, except, finally e raise.

Tratando Exceções com try e except

Use o bloco try para envolver o código que pode causar uma exceção, e o bloco except para lidar com a exceção se ela ocorrer.

Exemplo de tratamento de exceção:

try: número = int(input("Digite um número: ")) resultado = 10 / número print(f"Resultado: {resultado}") except ZeroDivisionError: print("Divisão por zero não é permitida.") except ValueError: print("Você não digitou um número válido.") 
Enter fullscreen mode Exit fullscreen mode

O Bloco finally

O bloco finally é opcional e é executado sempre, independentemente de ter ocorrido ou não uma exceção. É útil para ações de limpeza, como fechamento de arquivos.

Exemplo com bloco finally:

try: arquivo = open("arquivo.txt", "r") conteúdo = arquivo.read() except FileNotFoundError: print("O arquivo não foi encontrado.") finally: arquivo.close() 
Enter fullscreen mode Exit fullscreen mode

Levantando Exceções Personalizadas com raise

Você pode levantar exceções personalizadas usando a palavra-chave raise. Isso é útil para indicar erros específicos em seu código.

Exemplo de exceção personalizada:

class ValorNegativoError(Exception): def __init__(self, mensagem="O valor não pode ser negativo"): self.mensagem = mensagem super().__init__(self.mensagem) def calcular_idade(idade): if idade < 0: raise ValorNegativoError("Idade não pode ser negativa.") return idade try: idade = calcular_idade(-5) except ValorNegativoError as erro: print(erro) 
Enter fullscreen mode Exit fullscreen mode

Conclusão

A manipulação de arquivos e o tratamento de exceções são habilidades fundamentais na programação Python. A capacidade de ler, escrever e gerenciar arquivos é essencial para muitos aplicativos do mundo real. Além disso, o tratamento de exceções permite que você lide com erros de forma eficaz e forneça feedback adequado aos usuários.

Dominar esses conceitos é essencial para escrever código Python robusto e eficiente. À medida que você avança em sua jornada de programação, pratique essas habilidades em projetos reais para se tornar um programador Python mais competente.

Top comments (0)