Python异常对象

简介: Python异常对象。如何捕获异常对象、捕获异常对象演示、try 语句

异常对象

[TOC]

目录:

一、如何捕获异常对象

二、捕获异常对象演示

三、try 语句

一、如何捕获异常对象

当程序运行过程中出现异常以后,所有的异常信息都会被保存在一个专门的异常对象中,而异常传播时,实际上就是异常对象抛给了调用处。如果except后跟着一个异常的类型,那么只会捕获该类型的异常,比如:

ZeroDivisionError 类的对象用来表示除 0 异常

Nameerror 类的对象用来处理变量错误的异常

如果 except 后没有任何内容,则此时会捕获到所有异常, Exception 是所有异常类的父类,相当于 except,所以如果 except 后跟着 Exception,也会捕获到所有异常。在异常类后面跟着 as xx 此时 xx 就是异常对象,但通常情况下没有特别大的作用。运用 finally 子句即无论是否出现异常,该子句都会执行,所以通常将必须执行的代码放在 finally 子句中。

二、捕获异常对象演示

print('异常出现前')
l=[]
try:
    # print(c)
    # print(10/0)
    # l[10]
    l + 'hollo'
except NameError:
    print('出现NameError异常')
except ZeroDivisionError:
    print('出现ZeroDivisionError异常')
except IndexError:
    print('出现IndexDivisionError异常')
except Exception as e:
    print('未知异常',e,type(e))
finally:
    print('无论是否出现异常,该子句都会执行')

print('异常出现后')

三、try 语句

将可能出错的代码放入到 try 语句中,如果代码没有错误,则会正常执行,如果出现错误,则会执行 except 子句中的代码,通过这种方式处理异常,避免给因为一个异常导致整个程序的终止。try 语句如下:

try:
    代码块(可能出现错误的语句)
except 异常类型 as 异常名:
    代码块(出现错误以后的处理方式)
except 异常类型 as 异常名:
    代码块(出现错误以后的处理方式)
...
else:
    代码块(没出错时要执行的语句)
finally:
    代码块(该代码块总会执行)

其中 try 语句是必须的,else 语句可有可无,except 和 finally 至少有一个即可。

目录
相关文章
|
7天前
|
Unix API Python
【Python】已完美解决:(Python3.8异常)AttributeError: module ‘time‘ has no attribute ‘clock‘
【Python】已完美解决:(Python3.8异常)AttributeError: module ‘time‘ has no attribute ‘clock‘
11 0
|
25天前
|
存储 Go 索引
牢记python对象的操作方式
【6月更文挑战第20天】在Python中,`hash()`和`is`帮助确定对象的相等性。`dir()`和`vars()`揭示对象的属性和内部表示,`__slots__`优化内存使用。列表和字典结构有不同的内存和性能特性,字典使用哈希表进行快速访问。
72 5
牢记python对象的操作方式
|
3天前
|
Python
|
5天前
|
机器学习/深度学习 数据采集 算法
Python实现Prophet时间序列数据建模与异常值检测(Prophet算法)项目实战
Python实现Prophet时间序列数据建模与异常值检测(Prophet算法)项目实战
|
12天前
|
存储 JSON 测试技术
python中json和类对象的相互转化
针对python中类对象和json的相关转化问题, 本文介绍了4种方式,涉及了三个非常强大的python库jsonpickle、attrs和cattrs、pydantic,但是这些库的功能并未涉及太深。在工作中,遇到实际的问题时,可以根据这几种方法,灵活选取。 再回到结构化测试数据的构造,当需要对数据进行建模时,也就是赋予数据业务含义,pydantic应该是首选,目前(2024.7.1)来看,pydantic的生态非常活跃,各种基于pydantic的工具也非常多,建议尝试。
|
27天前
|
Shell Python
python中模块对象__file__
【6月更文挑战第12天】
21 8
|
27天前
|
Python
python中模块对象__name__
【6月更文挑战第12天】
51 7
|
26天前
|
Python
Python中的模块对象__package__
【6月更文挑战第13天】
17 5
|
26天前
|
编译器 索引 Python
Python常见异常类型说明及触发代码示例
开发过程中需要根据具体情况选择处理异常,并使用try-except语句来捕获并处理异常,从而保证程序的健壮性和稳定性。在Python中,异常是程序执行期间发生的错误或意外情况。当解释器遇到异常时,会停止程序的正常执行,并在控制台输出异常的相关信息。Python中有许多不同的异常类型,每个异常类型表示不同的错误或意外情况。OSError:操作系统产生的异常(例如打开一个不存在的文件)。AttributeError:尝试访问一个对象没有的属性。UnicodeError:Unicode相关的异常。
64 5