Python Crie exceções personalizadas

Python Crie exceções personalizadas
Enquanto trabalha em qualquer ambiente de programação, você pode ter encontrado vários erros quando algo dá errado com seu código. Dizem que as exceções que ocorrem automaticamente pelo intérprete ou compilador são exceções internas. Assim como exceções internas, algumas linguagens de programação nos fornecem a capacidade de criar exceções personalizadas de acordo com nossas necessidades. Você já tentou criar suas exceções dentro do bloco de código de código de código em programação orientada a objetos? Neste artigo, discutiremos um método simples para criar exceções personalizadas no Python. Vamos começar com o lançamento do aplicativo terminal da área de atividade do Linux, utilizando o atalho simples “Ctrl+Alt+T”. Você tem que instalar a versão mais recente do Python e está pronto para ir.

Após a instalação do Python, precisamos de um arquivo python para fazer códigos. Para isso, usaremos a palavra -chave "Touch" na área de consulta e o nome do arquivo para um arquivo ser criado. Execute este comando e o arquivo será gerado no diretório atual "Home". Depois disso, tente abrir seu novo arquivo com qualquer editor interno do Ubuntu 20.04 i.e., Estamos abrindo no editor de nano.

Exemplo 01:

O arquivo vazio será iniciado e pronto para seu uso. Em primeiro lugar, vamos dar uma olhada nas exceções do Python embutidas. Para isso, adicionamos o suporte Python “#!/usr/bin/python ”na primeira linha e criou uma nova classe“ teste ”. A classe contém uma variável "x" com algum valor. Dê uma boa olhada no valor de "x", pois ele contém a única citação entre isso causará um erro. Criamos um objeto "T" para o teste de classe usando o método padrão. Este objeto recém -feito "T" foi usado para chamar a variável "X" através do método "Dot". Isso foi feito na declaração de impressão para exibir o valor de "x".

O python “personalizado.O arquivo py ”que acabou de ser atualizado com o código foi executado no pool python. Temos a exceção “SyntaxError: EOL durante a digitalização da string literal” depois de executar este código. O erro está indicando que o erro é causado devido ao valor de "x".

Agora, vamos dar uma olhada na maneira mais simples de criar exceções personalizadas usando nosso código Python. Então, comece o mesmo costume.Arquivo PY no editor do GNU Nano com a execução de uma instrução "nano" na área de consulta Shell. Adicionado o suporte Python “#!/usr/bin/python ”na primeira linha deste arquivo. Inicializou uma nova classe chamada "Customexception" que foi derivada da classe de exceção integrada, pois estamos implementando a classe "exceção" em seu parâmetro. Isso significa que nossa classe recém -gerada implementará a classe de exceção para gerar uma exceção personalizada de nossa escolha.

A palavra -chave "passe" foi usada para simplesmente evitar o código complexo e chegar ao próximo passo para gerar uma exceção. A palavra -chave "Raise" foi usada para gerar uma exceção e chamar a classe recém -feita "Customexception" derivando da classe "Excection". A linha de palavras -chave "Raise" gerará um erro na execução mostrando o número da linha e a função principal () na saída. Vamos salvar este código primeiro e sair do arquivo usando Ctrl+S e Ctrl+X.

Ao executar o arquivo python atualizado “Custom.Py ", recebemos o erro" __main__.Customexception ”. Como não usamos nenhuma declaração na classe, é por isso que gera uma saída simples para uma exceção sem qualquer mensagem de explicação de exceção.

Exemplo 02:

Vamos mergulhar um pouco mais fundo no conceito de criar exceções personalizadas em Python. O primeiro exemplo foi usado para exibir a sintaxe mais simples de criar exceções personalizadas no Python. Agora, criaremos exceções personalizadas com alguns erros explicando a mensagem junto com algumas condições. Abrimos o arquivo e declaramos três novas classes: err, smalLexception e LargeException.A classe Err é derivada da classe de exceção interna, enquanto as outras duas classes são derivadas da classe "err".

Inicialize uma variável "x" com o valor 4 e use o bloco de tentativa de exceção no código. O bloco "Try" está recebendo entrada inteira de um usuário por meio da função "entrada" e o salva para uma variável "n". A declaração aninhada "if-else" está aqui para comparar o valor da variável "n" com o valor da variável "x". Se o valor "n" for menor que o valor "x", ele aumentará o SmalLexception usando a palavra -chave Raise junto com o nome da classe "SmalLexception". Se o valor "n" for maior que o valor "x", ele aumentará a LargeException usando o nome da classe "LargeException". Se as duas condições não se encontrarem, iremos com a exibição de uma mensagem simples no shell usando a instrução de impressão i.e., “O valor é igual”.

Após o bloco "Tente", usamos 2, exceto peças para levantar as mensagens de erro de acordo com a condição. Se o valor for menor que os mencionados, a exceção "SmalLexception" será acionada, caso contrário, a LargeException será executada. A declaração de impressão em ambos, exceto peças, está utilizando a mensagem da string de acordo com a necessidade deles.e., pequeno e grande.

Na execução, nosso usuário agregou valor 8 i.e., maior que o valor x = 4. A LargeException foi executada. Ao funcionar novamente, o usuário adicionou o pequeno valor 2 e conseguiu a Smallexception executada. Por fim, o usuário agregou o valor igual que a mensagem de sucesso é mostrada.

Se você quiser tentar adicionar a entrada do usuário até a desejada, poderá usar o loop "while" como fizemos abaixo.

Agora, a saída será algo abaixo.

Exemplo 03:

Há outra maneira de criar exceções personalizadas em Python e esse é o uso da função “__init__” e “__STR__” do python. Diz -se que o “__init__” é o construtor de uma classe que será usada para inicializar valores. Criamos uma classe de exceção "err" implementando a classe "Excepção" interna neste código Python.

Tomando dois argumentos, ele inicializará o valor da variável "idade" e "msg" com o principal objeto "eu". A função do construtor “__init__” da “exceção” foi chamada usando o “super ()” e passou a variável “msg” em seu parâmetro. O método "__STR__" é usado para exibir a mensagem "Erro" de acordo com o formato da string mostrado em sua declaração de retorno.

A variável "idade" está obtendo o valor do número do usuário por meio da função "entrada" e a variável da string "msg" é inicializada. A declaração "if-else" está aqui para aumentar uma exceção personalizada quando o valor "idade" é menor que 20 e maior que 50. Caso contrário, a parte "else" exibirá a mensagem de sucesso.

Na primeira execução, o usuário adicionou 40 e recebeu a mensagem de sucesso I.e., 40> 20 e 40 < 50.

Na segunda execução, o usuário adicionou 80 como idade de entrada i.e., 80 é maior que 50. Temos a exceção no mesmo formato que declaramos na função "__str".

Conclusão

Isso se tratava de fazer exceções personalizadas em nosso ambiente Python, sempre que necessário. Discutimos a maneira mais simples possível de facilitar para nossos usuários eu.e., Exemplos iniciais da sintaxe mais básica. Também descobrimos o uso de "__init__" e as funções "__STR__" usadas na criação de exceções personalizadas. Tudo isso foi muito fácil de implementar.