成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術(shù)文章
文章詳情頁

python - py的缺陷嗎——try...except,except里只要有對應(yīng)第一個try的錯誤就行了嗎?也就是忽視了其他的try錯

瀏覽:102日期:2022-09-22 14:51:00

問題描述

一個try中可以能產(chǎn)生多個錯誤,所以可以一個try對應(yīng)多個except

try:

f = open(’我為什么是一個文件.txt’) #這個txt并不存在print(f.read())f.close()sum=1+’1’ #文件類型出錯

except TypeError as reason:

print(’類型出錯啦n錯誤的原因是:’+str(reason))

except OSError as reason:

print(’文件出錯了n錯誤的原因是:’+str(reason))

如果去掉這兩行

except OSError as reason:

print(’文件出錯了n錯誤的原因是:’+str(reason))

會報錯

Traceback (most recent call last):? File 'E:/PyCharm 2016.3.2/untitled3/guessing/test01.py', line 2, in <module>? ? f = open(’我為什么是一個文件.txt’) ?#這個txt并不存在FileNotFoundError: [Errno 2] No such file or directory: ’我為什么是一個文件.txt’

而如果去掉

except TypeError as reason:

print(’類型出錯啦n錯誤的原因是:’+str(reason))

則不會報錯,也就是說忽視了sum=1+‘1’的錯誤,這個是缺陷嗎還是什么,麻煩大咖 解釋下

問題解答

回答1:

這里有兩個錯誤啊,發(fā)生OSError的時候就不執(zhí)行后面的代碼了,也就是沒有執(zhí)行

sum=1+’1’ #文件類型出錯

,所有不是忽略了,而是不執(zhí)行,所有就沒有報錯哦

標(biāo)簽: Python 編程