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()
相关推荐
这里有鱼汤2 小时前
小白必看:QMT里的miniQMT入门教程
后端·python
TF男孩12 小时前
ARQ:一款低成本的消息队列,实现每秒万级吞吐
后端·python·消息队列
该用户已不存在17 小时前
Mojo vs Python vs Rust: 2025年搞AI,该学哪个?
后端·python·rust
站大爷IP19 小时前
Java调用Python的5种实用方案:从简单到进阶的全场景解析
python
用户8356290780511 天前
从手动编辑到代码生成:Python 助你高效创建 Word 文档
后端·python
c8i1 天前
python中类的基本结构、特殊属性于MRO理解
python
liwulin05061 天前
【ESP32-CAM】HELLO WORLD
python
Doris_20231 天前
Python条件判断语句 if、elif 、else
前端·后端·python
Doris_20231 天前
Python 模式匹配match case
前端·后端·python
这里有鱼汤1 天前
Python量化实盘踩坑指南:分钟K线没处理好,小心直接亏钱!
后端·python·程序员