用户自定义异常
Coddy Python 异常处理 课程的第 12 课,共 16 课。
如何创建用户自定义异常?
分为三个步骤:
1. 通过继承 Exception 类来创建异常类。
2. 针对特定条件引发创建的异常。
3. 处理该异常。
问:假设我想在程序中避免“除以 5”。如果用户尝试除以 5,我希望程序生成一个异常。
#step-1:创建 Exception 类
class FiveDivisionError(Exception):
passFiveDivisionError 是我们创建的异常。你也可以创建构造函数并配置消息。不过,我们会在 raise 语句中配置消息。
#step-2:满足特定条件时抛出 Exception
try:
a = int(input("1st Number:"))
b = int(input("2nd Number:"))
if b == 5:
raise FiveDivisionError("Cannot divide by five")
div = a/b
print("Division:",div)在上面的代码片段中,如果满足 b == 5 这个条件,我们就会引发 FiveDivisionError。我们使用 try 块来处理异常。
#第 3 步:使用 except 处理异常
except Exception as obj:
print(obj)上面的代码片段会处理发生的异常。现在,轮到你解决另一个问题了。
挑战
简单年龄会作为输入传递给你的函数 'access'。请补全这个函数:如果年龄小于 18,就打印 "Access Denied!" 并停止函数执行;否则,打印 "Session Created!"。只能使用异常处理。创建自定义异常 'AccessError'。
亲手试试
def access(age):
passPython 异常处理中的所有课
自己练习: Python 在线编译器