Python---异常

捕获全部异常

语法:

try:

可能发生的错误代码

except:

如果出现异常执行的代码

例子:

python 复制代码
try:
    open("test2.txt", "r", encoding="UTF-8")
except:
    print("出现异常,文件不存在,换个模式打开")
    open("test2.txt", "w", encoding="UTF-8")

捕获指定异常

语法:

try:

可能发生的错误代码

except 异常名字 as e:

如果出现异常执行的代码

例子:

python 复制代码
try:
    print(name)
    # 1 / 0
except NameError as e:
    print("捕获指定异常")

捕获多个指定异常

语法:

try:

可能发生的错误代码

except (异常名字1,异常名字2) as e:

如果出现异常执行的代码

例子:

python 复制代码
try:
    1 / 0
except (NameError, ZeroDivisionError) as e:
    print("捕获多个指定异常")

捕获全部异常(使用较多)

语法:

try:

可能发生的错误代码

except Exception as e:

如果出现异常执行的代码

例子:

python 复制代码
try:
    1 / 0
except Exception as e:
    print("捕获所有异常")

异常else --- 没有异常执行的代码

语法:

try:

可能发生的错误代码

except Exception as e:

如果出现异常执行的代码

else:

没有异常执行的代码

例子:

python 复制代码
try:
    open("test.txt", "r", encoding="UTF-8")
except Exception as e:
    print("出现异常了")
else:
    print("没有异常")

异常的finally --- 无论是否有异常都要执行的代码

语法:

try:

可能发生的错误代码

except Exception as e:

如果出现异常执行的代码

finally:

无论是否有异常都要执行的代码

例子:

python 复制代码
try:
    f = open("test.txt", "r", encoding="UTF-8")
except Exception as e:
    print("出现异常了")
    f = open("test.txt", "w", encoding="UTF-8")
else:
    print("没有异常")
finally:
    f.close()

异常具有传递性

例子:

python 复制代码
def func01():
    print("1-1")
    num = 1/0
    print("1-2")

def func02():
    print("2-1")
    func01()
    print("2-2")

def main():
    print("3-1")
    try:
        func02()
    except Exception as e:
        print(e)
    print("3-2")

main()
相关推荐
2401_867623982 分钟前
如何设置用户默认表空间_ALTER USER DEFAULT TABLESPACE
jvm·数据库·python
ftpeak2 分钟前
LangGraph Agent 开发指南(12~函数式 API)
人工智能·python·ai·langchain·langgraph
yivifu4 分钟前
跟水印杠上了——顺便巩固Tkinter的GUI编程
python·opencv·tkinter·去水印
2301_803934617 分钟前
html标签怎样划分页面区域_section与div的区别【介绍】
jvm·数据库·python
知学致远11 分钟前
Python基础语法_01-注释、输入输出、变量
python
沈浩(种子思维作者)12 分钟前
物理的本质是数学,还是数学只是描述物理的方便之语?
人工智能·python·算法
Cloud_Shy61820 分钟前
Python 数据分析基础入门:《Excel Python:飞速搞定数据分析与处理》学习笔记系列(第十章 Python 驱动的 Excel 工具 下篇)
笔记·python·学习·数据分析·excel·pandas
2401_8246976621 分钟前
如何管理Oracle服务器的内核共享内存_shmmax与shmall计算
jvm·数据库·python
2301_7838486521 分钟前
mysql数据迁移过程如何降低性能影响_采用增量备份与多线程同步
jvm·数据库·python
2401_8844541525 分钟前
CSS如何快速实现网站换肤功能_利用CSS变量重置全局颜色方案
jvm·数据库·python