Maison développement back-end Tutoriel Python 浅谈python抛出异常、自定义异常, 传递异常

浅谈python抛出异常、自定义异常, 传递异常

Jul 21, 2016 pm 02:53 PM
自定义异常

一. 抛出异常

Python用异常对象(exception object)表示异常情况,遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,程序就会用所谓的回溯(Traceback,一种错误信息)终止执行。

raise 语句

Python中的raise 关键字用于引发一个异常,基本上和C#和Java中的throw关键字相同,如下所示:

import traceback

def throw_error():
  raise Exception("抛出一个异常")#异常被抛出,print函数无法执行
  print("飞天猪")
  
throw_error()

Copier après la connexion

#运行结果:

'''Traceback (most recent call last):
 File "C:\Users\Administrator\Desktop\systray.py", line 7, in <module>
  throw_error()
 File "C:\Users\Administrator\Desktop\systray.py", line 4, in throw_error
  raise Exception("抛出一个异常")#异常被抛出,print函数无法执行
Exception: 抛出一个异常'''
Copier après la connexion

raise关键字后面是抛出是一个通用的异常类型(Exception),一般来说抛出的异常越详细越好

二.传递异常:

捕捉到了异常,但是又想重新引发它(传递异常),可以使用不带参数的raise语句即可:

class MufCalc(object):
  m = False
  def calc(self,exp):
    try:
      return eval(exp)
    except ZeroDivisionError:
      if self.m:
        print("cool")
      else:
        raise

app = MufCalc()
app.calc(2/0)

Copier après la connexion

三.自定义异常类型

Python中也可以自定义自己的特殊类型的异常,只需要要从Exception类继承(直接或间接)即可:

class MyError(Exception):
  pass
Copier après la connexion

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1662
14
Tutoriel PHP
1262
29
Tutoriel C#
1235
24
Comment implémenter la gestion des erreurs et les exceptions personnalisées dans FastAPI Comment implémenter la gestion des erreurs et les exceptions personnalisées dans FastAPI Jul 29, 2023 pm 07:00 PM

Comment implémenter la gestion des erreurs et les exceptions personnalisées dans FastAPI Introduction : FastAPI est un framework Web moderne basé sur Python. Ses hautes performances et ses capacités de développement rapide le rendent de plus en plus populaire dans le domaine du développement. Dans les applications réelles, des erreurs et des exceptions sont souvent rencontrées. Cet article explique comment implémenter la gestion des erreurs et les exceptions personnalisées dans FastAPI pour aider les développeurs à mieux gérer les situations d'erreur dans les applications. Gestion des erreurs FastAPI : FastAPI fournit un

Création et utilisation d'exceptions personnalisées Java Création et utilisation d'exceptions personnalisées Java May 03, 2024 pm 10:27 PM

Les exceptions personnalisées sont utilisées pour créer des messages d'erreur et gérer la logique. Tout d’abord, vous devez hériter d’Exception ou RuntimeException pour créer une classe d’exception personnalisée. Ensuite, vous pouvez remplacer la méthode getMessage() pour définir le message d'exception. Les exceptions sont levées via le mot-clé throw. Utilisez des blocs try-catch pour gérer les exceptions personnalisées. Cet article fournit un cas pratique pour analyser une entrée entière et lancer une InvalidInputException personnalisée lorsque l'entrée n'est pas un entier.

Comment créer un gestionnaire d'exceptions personnalisé dans CakePHP ? Comment créer un gestionnaire d'exceptions personnalisé dans CakePHP ? Jun 03, 2023 pm 11:01 PM

CakePHP est un framework PHP populaire qui vous permet de créer rapidement des applications Web. Diverses exceptions peuvent se produire lors du traitement des entrées utilisateur et de l'exécution de tâches telles que des opérations de base de données. Comment gérer les exceptions afin qu'un message d'erreur ne soit pas présenté directement à l'utilisateur lorsqu'un problème survient ? C'est là qu'interviennent les gestionnaires d'exceptions personnalisés. Dans cet article, nous explorerons comment créer des gestionnaires d'exceptions personnalisés dans CakePHP. Pourquoi avons-nous besoin de gestionnaires d’exceptions personnalisés ? Lorsqu'une application Web lève une exception, Cak

Gestion des exceptions Python : maîtrisez la netteté et contrôlez la durée de vie de votre code Gestion des exceptions Python : maîtrisez la netteté et contrôlez la durée de vie de votre code Feb 25, 2024 pm 04:10 PM

Python est un langage de programmation puissant, mais il n'est pas parfait. Lors de l'exécution d'un programme Python, vous pouvez rencontrer diverses exceptions, provoquant le blocage du programme ou la production de résultats erronés. Afin d'éviter que ces situations ne se produisent, nous devons gérer les situations anormales, c'est-à-dire la gestion des exceptions. La syntaxe de base pour la gestion des exceptions est try-sauf-finally. Le bloc try contient du code qui peut provoquer une exception, le bloc except est utilisé pour intercepter les exceptions et le bloc enfin est utilisé pour le code qui sera exécuté indépendamment du fait qu'une exception se produise ou non. Ce qui suit est un exemple simple de gestion des exceptions : essayez : #Code pouvant provoquer des exceptions exceptExceptionase : #Catch exceptions and handle fi

Le programme C++ crée une exception personnalisée Le programme C++ crée une exception personnalisée Aug 26, 2023 pm 07:53 PM

Les exceptions sont un concept essentiel du C++. Des exceptions se produisent lorsqu'une opération indésirable ou impossible se produit pendant l'exécution. La gestion de ces opérations indésirables ou impossibles en C++ est appelée gestion des exceptions. La gestion des exceptions utilise principalement trois mots-clés spécifiques, à savoir « essayer », « catch » et « throw ». Le mot-clé « try » est utilisé pour exécuter du code pouvant rencontrer des exceptions, le mot-clé « catch » est utilisé pour gérer ces exceptions et le mot-clé « throws » est utilisé pour créer des exceptions. Les exceptions en C++ peuvent être divisées en deux types, à savoir les exceptions STL et les exceptions définies par l'utilisateur. Dans cet article, nous nous concentrons sur la façon de créer ces exceptions personnalisées. Plus de détails sur la gestion des exceptions peuvent être trouvés ici. Utilisez un seul

Solution à l'exception de gestion des exceptions personnalisées Java (CustomExceptionHandlerException) Solution à l'exception de gestion des exceptions personnalisées Java (CustomExceptionHandlerException) Aug 17, 2023 pm 06:18 PM

Solutions aux exceptions de gestion des exceptions personnalisées Java (CustomExceptionHandlerException) Dans le développement Java, nous rencontrons souvent diverses exceptions. En plus des types d'exceptions déjà définis en Java, nous pouvons également personnaliser les types d'exceptions pour mieux gérer une logique métier spécifique. Cependant, lors de l'utilisation de la gestion personnalisée des exceptions, vous rencontrez parfois des problèmes, tels que CustomExceptionHandlerExcept.

Comment intercepter et gérer les exceptions personnalisées en PHP ? Comment intercepter et gérer les exceptions personnalisées en PHP ? May 09, 2024 pm 10:00 PM

Comment intercepter et gérer les exceptions personnalisées en PHP : héritez de la classe Exception pour créer des exceptions personnalisées. Utilisez le mot-clé throw pour lancer une exception personnalisée. Utilisez les blocs try, catch et enfin pour intercepter et gérer les exceptions.

Comment personnaliser les exceptions en Java ? Comment personnaliser les exceptions en Java ? Apr 12, 2024 am 09:06 AM

La création d'exceptions personnalisées en Java améliore la robustesse des applications. Cela nécessite : Créer une classe d’exception personnalisée, héritée d’Exception ou RuntimeException. Lève une exception personnalisée, similaire à une exception normale. Détectez les exceptions personnalisées lors de l'appel de méthodes pour des messages d'erreur plus informatifs.

See all articles