如何在Python中实现用户自定义异常?
我们通过在Python中创建新的异常类来创建用户定义的或自定义的异常。这个想法是从异常类中派生自定义异常类。大多数内置的异常使用相同的想法来强制执行它们的异常。
在给定的代码中,您已经创建了一个用户自定义的异常类,“CustomException”。它使用了Exception类作为父类。因此,新的用户定义的异常类将像任何其他异常类一样通过调用“raise”语句并带有可选的错误消息来引发异常。
让我们看一个例子。
在这个例子中,我们展示如何引发用户自定义的异常并在程序中捕获错误。在示例代码中,我们要求用户一遍又一遍地输入字母,直到他输入存储的字母为止。
为了帮助,程序提供了一个提示,让用户可以找到正确的字母。
#Python用户自定义异常
class CustomException(Exception):
"""其他异常的基类"""
通过
class PrecedingLetterError(CustomException):
"""当输入的字母小于实际字母时引发"""
通过
class SucceedingLetterError(CustomException):
"""当输入的字母大于实际字母时引发"""
通过
#我们需要猜测这个字母,直到我们猜对为止
alphabet ='k'
while True:
try:
foo = raw_input("输入一个字母:")
if foo < alphabet:
raise PrecedingLetterError
elif foo > alphabet:
raise SucceedingLetterError
break
except PrecedingLetterError:
print("输入的字母是前一个字母,请重试!")
print('')
except SucceedingLetterError:
print("输入的字母是后一个字母,请重试!")
print('')
print("恭喜!您猜对了。")
阅读更多:Python 教程