Python 捕获异常(Try Except Exception)

目录

前言

常见的十类异常类型:

try...except...else语句

格式

示例1

示例2

捕获所有异常(常用)

格式

示例 

try...except...finally语句

格式

示例

前言

异常捕获就是针对某一部分可能出错的代码,在运行期间一旦出现错误就捕获它,在捕获到错误后将错误信息写入日志文件或进行其他的处理,然后接着继续运行后续的代码,捕获异常的目的就是不让代码停止运行。 

常见的十类异常类型:

TypeError             //当操作或函数应用于不适当类型的对象时引发。
ValueError            //当函数或操作的参数具有正确的类型但不合法时引发。
NameError             //当尝试访问一个未定义的变量时,会抛出NameError异常。
IndexError            //当尝试访问列表、元组或字符串中不存在的索引时引发。
KeyError              //当尝试访问字典中不存在的键时引发。
ZeroDivisionError     //当尝试除以零时引发。
IOError               //当尝试读取不存在的文件或无法访问文件时引发。
ImportError           //当尝试导入不存在的模块或包时引发。
AttributeError        //当尝试访问对象不存在的属性时引发。
KeyboardInterrupt     //当用户中断程序执行时引发。

try...except...else语句

格式
try:
    ...
except:
    ...
else:
    ...

示例1
try:
    result = 2 + 'a'
    print(result)
except TypeError:
    print("操作或函数应用于不适当类型")

示例2
try:
    result = 1 + 2
    print(result)
except TypeError:
    print("操作或函数应用于不适当类型")
else:
    print("数字1可以和数字2直接相加")

print("-------------------------------")
try:
    result = "a" + 1
    print(result)
except TypeError:
    print("操作或函数应用于不适当类型")
else:
    print("字符串a不能和数字1直接相加")

总结:

根据上述代码可知

try语句中的代码块没有发生任何异常时,else语句中的代码块才会被执行

捕获所有异常(常用)

格式
try:
    ...
except Exception as e:
    ...
else:
    ...
示例 
try:
    answer = int(input("请输入一个整数:"))

except Exception as e:
    print("程序出现错误" + str(e))

else:
    print("输入的是整数")
输入2.5

        程序出现错误invalid literal for int() with base 10: '2.5'

输入a

        程序出现错误invalid literal for int() with base 10: 'a'

输入1

        输入的是整数

try...except...finally语句

格式
try:
    ...
except:
    ...
finally:
    ...
示例
try:
    result = "a" + 1
    print(result)
except TypeError:
    print("操作或函数应用于不适当类型")
finally:
    print("结果对不对的都输出")

总结:

根据上述代码可知 

无论是否发生异常,都会执行 finally 分支中的代码。try 分支或者任何 except 分支执行之后立即执行 finally 分支。

相关推荐

  1. Python在生物信息学中的应用:捕获所有异常

    2024-01-19 16:28:05       25 阅读
  2. SpringBoot全局异常捕获

    2024-01-19 16:28:05       34 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-19 16:28:05       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-19 16:28:05       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-19 16:28:05       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-19 16:28:05       20 阅读

热门阅读

  1. 快速了解Docker(概念+基本组成)

    2024-01-19 16:28:05       36 阅读
  2. 【算法】分割回文串【动态规划】【回溯】

    2024-01-19 16:28:05       36 阅读
  3. How to Agree With Ideas

    2024-01-19 16:28:05       23 阅读
  4. C++轮子 · 函数式编程

    2024-01-19 16:28:05       33 阅读