Python-捕获异常

297 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第22天,点击查看活动详情

1. 捕获异常

简单的捕获异常语法: 在程序开发中,如果对某些代码的执行不能确定是否正确,可以增加try(尝试)捕获异常

捕获异常最简单的语法格式:

try:
    尝试执行的代码
except:
    出现错误的处理
  • try尝试,下方编写要尝试代码,不确定是否能够正常执行的代码
  • except如果不是,下方编写尝试失败的代码 ⚡ 代码演示如下所示:
try:
    # 不能确定正确执行的代码
    num = int(input("请输入一个整数:"))
except:
    # 错误的处理代码
    print("请输入正确的整数")

# 无论是否出现错误都会执行后续代码
print("-" * 50)

⚡ 运行结果如下图所示:可以看出,无论程序是否出现错误,都会执行后续代码print("-" * 50),这就是简单的捕获异常的语法。

image.png

2. 错误类型捕获

在程序执行时,可能会遇到不同类型的异常,并且需要针对不同类型的异常,做出不同的响应,这个时候,就需要捕获错误类型了。

当Python解释器抛出异常时,最后一行错误信息的第一个单词,就是错误类型 语法如下:

try:
    # 尝试执行的代码
    pass
except 错误类型1# 针对错误类型1,对应的代码处理
    pass
except (错误类型2, 错误类型3):
    # 针对错误类型2 和 3,对应代码处理
except Exception as result:
    print("未知错误 %s" % result)
    

异常类型捕获演练--要求用户输入整数

案例需求:

  1. 提示用户输入一个整数
  2. 使用8除以用户输入的整数并且输出 🔥 代码演示如下所示:
try:
    # 提示用户输入一个整数
    num = int(input("请输入一个整数:"))

    # 使用8除以用户输入的整数并且输出
    result = 8 / num
    print(result)
    
except ZeroDivisionError:
    # 有针对性地编写错误处理代码
    print("除0错误") 

except ValueError:
    # 有针对性地编写错误处理代码
    print("请输入正确的整数")
# 想要判断多少种错误类型,就把多少种错误类型依次类推写在这里

🔥 运行结果如下图所示:根据不同的错误去定制不同的输出提示。此种方法适合可能出现多种错误的情况,并且可以有针对性地编写错误处理代码。想判断多少种错误类型,就把多少种错误类型依次类推往下写。

image.png