Menu
CoddyTech

try-except 语句

Coddy Python 异常处理 课程的第 3 课,共 16 课。

Python 中的 try-except 块用于捕获和处理异常。下面是 try-except 块的基本结构。

try:
    statement 1
    statements which can cause error
    statement 3
except [ExceptionName]:
    code for exception handling 
  • Python 会运行 try block 中的代码。
  • 如果遇到异常,代码执行会跳转到 except block。try 块中剩余的代码行不会执行(上例中的 statement 3)。
  • 如果没有发生异常,try block 会完整执行,except block 会被跳过。

try 块:

  • 包含可能发生异常的代码的代码块。

except 块:

  • 发生异常时执行必要操作的代码块。

示例:

try:
   a = int(input())
   b = int(input())
   div = a/b
   print("Division is:",div)
except ZeroDivisionError:
   print("Cannot divide by zero")
   
print("Rest of code")

如果用户为 b 输入非零值,程序就能正常运行。 

如果用户为 b 输入 0,'a/b' 会导致 ZeroDivisionError,程序流程会跳转到 except 块。

程序会在控制台打印“Cannot divide by zero”消息,然后继续执行剩余代码。我们通过使用 try-except 避免了程序在这里终止。

challenge icon

挑战

简单

上面的程序会在用户为任意输入输入非数字值时引发“ValueError”。

编写一个程序来处理此异常,并在终端输出“Not a Number”消息。

亲手试试

a = int(input())
b = int(input())
div = a/b
print("Division is:",div)
#在这里处理异常

Python 异常处理中的所有课

自己练习: Python 在线编译器