Monkey 发表于 2025-6-6 20:01

异常处理(抓坏人)

异常的定义:
      程序在运行过程中出现的问题/错误,影响程序的正常执行。
异常的组成:
      ①出现异常的文件 ②出现异常的代码所在行数 ③出现异常的具体代码 ④异常的类型 ⑤具体的异常信息

异常处理的几种方式:
      ①try...except...
             语法:
                  try:
                         监控的代码块(一般放比较重要的代码)
                  except:
                         如果监控的代码出现问题,如何处理?

    发生异常之前的代码正常执行,但发生异常之后的代码仍然不会执行,而是直接执行except里的代码

      若监控的代码没有异常,则try里的所有代码均会执行,且不会执行except里的代码

    ②try...except 错误类型 as e(根据错误类型抓错误信息)
             语法:
                  try:
                         监控的代码块(一般放比较重要的代码)
                  except 错误类型 as x:--->此处x为取的别名
                         如果监控的代码出现问题,如何处理?
▼Python的标准异常(错误类型)

    BaseException:所有错误的基类
    Exception:常规错误的基类
      (1)我们平时所见到的错误都属于常规错误,所以上面BaseException和Exception都可使用。

      (2)BaseException和Exception两种错误类型虽然都可以抓取到错误信息,但是并不准确(这两种几乎算是万能的是无论什么错误类型都会抓取到)。
      (3)但实际使用中,我们需要明确的错误类型和错误信息,以便于定位问题。

      (4)但是使用明确的错误类型抓取时,如果实际错误不是这个类型就会造成抓取不成功,从而导致实际错误不能被处理,而导致程序中止执行。

    ③try...except...finally
             语法:
                  try:
                         监控的代码块(一般放比较重要的代码)
                  except 错误类型 as x:--->此处x为取的别名
                         如果监控的代码出现问题,如何处理?
                  finally:
                         无论是否有异常都需要运行的代码
             当try里面的代码没有异常时

             当try里面的代码有异常时

             总结:不管监控的代码是否有异常,finally里面的代码都会执行。
    ④try...except...else
             语法:
                  try:
                         监控的代码块(一般放比较重要的代码)
                  except 错误类型 as x:--->此处x为取的别名
                         如果监控的代码出现问题,如何处理?
                  else:
                         只有监控代码没有异常时才会运行的代码
             当try里面的代码没有异常时

             当try里面的代码有异常时

             总结:try与else是一起的,只有当try里面的代码没有异常的时候才会执行else里面的代码。

页: [1]
查看完整版本: 异常处理(抓坏人)