python中异常栈跟踪与异常利用

简介: python中异常栈跟踪与异常利用

知识回顾:



异常类型结构:

try:

pass

except:

pass

else:

pass

finally:

pass

异常中,必须要有的try关键词,后接上except或者else


一、异常栈的跟踪



栈的特点:先进后出

异常的抛出,如果内部的异常没有被进行处理,那么会从最内部一个慢慢往外部传递异常。

如果内部的异常已经被捕获且处理,那么内部的异常就不会进行传递了。


二、异常利用



我们在使用字典的时候,往往可能会出现调用的字典的关键词并不存在的情况,那么直接就会报错了。我们以前会使用if语句进行处理,来判断每一个关键词在调用之前,是否存在的判断。


注意:python中大小写是敏感的,要注意调用的时候,大小写的正确性。


1.判断键是否存在

原有判断字典键值的方式,防止程序异常

#调用字典输出,直接使用if语句进行判断

if "aa" in dic1:

   print(dic1["aa"])

else:

   print("关键词不存在")


利用异常捕获,来简化代码。

try:

   print(dic1["aa"])

   print(dic1["BB"])

except KeyError:

   print("关键词不存在,抛出异常")


2.判断类方法是否存在

类的异常利用,老的模式下的类的属性是否存在的判断

mc=MyClass()

if(hasattr(MyClass,"abc")):

   mc.abc()

else:

   print("属性不存在")


新式的类属性调用的判断

采用异常捕获的情况来进行

try:

   mc.abc()

   mc.defd()

except:

   print("属性方法不存在")


三、总结强调



1.掌握异常栈的跟踪。

2.掌握异常的利用,来优化代码,排除未知异常。

3.掌握try捕获异常的基本形式。

4.所有异常捕获后,抛出的异常,都是异常对象。

相关文章
|
17天前
|
Python
Python基础教程(第3版)中文版 第8章 异常(笔记)
Python基础教程(第3版)中文版 第8章 异常(笔记)
|
2月前
|
Python
【Python进阶(一)】——异常与错误
【Python进阶(一)】——异常与错误
|
2月前
|
索引 Python
Python中的异常处理与自定义异常
Python中的异常处理与自定义异常
22 0
|
11天前
|
编译器 索引 Python
Python常见异常类型说明及触发代码示例
开发过程中需要根据具体情况选择处理异常,并使用try-except语句来捕获并处理异常,从而保证程序的健壮性和稳定性。在Python中,异常是程序执行期间发生的错误或意外情况。当解释器遇到异常时,会停止程序的正常执行,并在控制台输出异常的相关信息。Python中有许多不同的异常类型,每个异常类型表示不同的错误或意外情况。OSError:操作系统产生的异常(例如打开一个不存在的文件)。AttributeError:尝试访问一个对象没有的属性。UnicodeError:Unicode相关的异常。
18 5
|
16天前
|
Python
python执行elasticsearch异常【已解决】
python执行elasticsearch异常【已解决】
15 2
|
16天前
|
存储 Python
Python零基础入门-8 错误和异常
Python零基础入门-8 错误和异常
|
2天前
|
机器学习/深度学习 人工智能 程序员
探索Python宝库:从基础到技能的干货知识(数据类型与变量+ 条件与循环+函数与模块+文件+异常+OOP)
探索Python宝库:从基础到技能的干货知识(数据类型与变量+ 条件与循环+函数与模块+文件+异常+OOP)
3 0
|
2月前
|
Python
Python文件的异常、模块与包
Python文件的异常、模块与包
17 3
|
2月前
|
Python
Python基础 笔记(十) 文件操作、异常、模块
Python基础 笔记(十) 文件操作、异常、模块
35 3