Python 有许多内置异常,当程序中出现错误时,它们会强制您的程序输出错误。
但是,有时您可能需要创建自己的自定义例外来满足您的目的。
在 Python 中,用户可以通过创建新类来定义自定义异常。这个异常类必须直接或间接地从内置Exception
类派生。大多数内置异常也是从这个类派生的。
class TooLongExceptin(Exception): "this is user's Exception for check the length of name " def __init__(self,leng): self.leng = leng print("姓名长度是" + str(self.leng) + ",超过长度了") 当我们开发一个大型 Python 程序时,将我们的程序引发的所有用户定义的异常放在一个单独的文件中是一个很好的做法。许多标准模块都这样做。他们将异常分别定义为exceptions.py或errors.py(通常但并非总是如此)。 用户自定义异常类可以实现普通类可以做的一切,但我们一般都让它们变得简单和简洁。大多数实现声明了一个自定义基类并从这个基类派生其他异常类。这个概念在下面的例子中更加清晰。
在此示例中,我们将说明如何在程序中使用用户定义的异常来引发和捕获错误。
def name_Test(): try: name = input("enter your naem:") if len(name) > 4: raise TooLongExceptin(len(name)) else: print(name) except TooLongExceptin : # 这里异常类型是用户自定义的 print("捕捉到异常了") finally: print('结束') name_Test() 我们已经定义了一个名为TooLongExceptin. 我们的程序实际触发raise,会来到except