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)
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.")
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.")
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()
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)
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)