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()
相关推荐
fsnine几秒前
Python图形化界面——pyqt5教程
开发语言·python·qt
扶尔魔ocy39 分钟前
python程序打包成win的exe应用(以OCR应用为例)
python·ocr·中文识别
Psycho_MrZhang1 小时前
自定义层和读写文件
pytorch·python·深度学习
似水流年 光阴已逝1 小时前
从Excel姓名匹配案例学Python:由点及面的系统化学习指南
开发语言·python·excel
这里有鱼汤1 小时前
量化的困局:当所有人都在跑同一个因子时,我们还能赚谁的钱?
后端·python
新子y2 小时前
【小白笔记】strip的含义
笔记·python
Q_Q19632884752 小时前
python+vue的在线租房 房屋租赁系统
开发语言·vue.js·spring boot·python·django·flask·node.js
空影星2 小时前
GridPlayer,一个好用的多视频同步播放器
python·flask·电脑·音视频
草莓熊Lotso2 小时前
《C++ Web 自动化测试实战:常用函数全解析与场景化应用指南》
前端·c++·python·dubbo
叼菠萝2 小时前
AI 应用开发三剑客系列:LangChain 如何撑起 LLM 应用开发基石?
python·langchain