python3捕获异常_python中异常捕获方法详解
在Python中處理異常使用的是try-except代碼塊,try-except代碼塊放入讓python執(zhí)行的操作,同時(shí)告訴python程序如果發(fā)生了異常該怎么辦,try-except這個(gè)功能其實(shí)很多入門書籍中都放到了高級(jí)篇幅里,在入門的時(shí)候一般不會(huì)講這個(gè)使用,尤其是作為運(yùn)維人員,如果你經(jīng)常寫shell,轉(zhuǎn)到python后估計(jì)也很少使用這個(gè)功能,這功能我覺得說明了shell和python的一個(gè)重要區(qū)別,因?yàn)閜ython是一門真正的編程語言,像其它的編程語言php,java等都會(huì)提供異常捕獲功能,用這些程序?qū)懗龅拇a是要健壯性的,如果你閱讀一些其他人寫的程序代碼,尤其是一些socket編程方面的代碼,很多都是try…except…,有的還except好多個(gè),來判斷各種各樣的情況,既然這個(gè)功能這么有用,我們就來盡快了解下看如何使用的吧。
第一我們先看看它的語法,語法很簡(jiǎn)單,就是在try-except中放入你想要執(zhí)行的代碼塊,例如:、
try:
somecode1
except 異常類型/名稱:
somecode2
這是最簡(jiǎn)單的一種情況,如果情況復(fù)雜可以使用多個(gè)except句子,例如:
try:
somecode0
except 異常類型/名稱1:
somecode1
except 異常2:
somecode2
except 異常3:
somecode3
try-except還有更高級(jí)的用法,加入else,finally等,今天我們不展開說了有興趣的可以自己深入研究下。
接下來我們來看一個(gè)簡(jiǎn)單例子,讀寫文件我們經(jīng)常的操作,一個(gè)常見的問題就是找不到文件,或者文件名稱,路徑不正確,對(duì)這種情況,你就可以采用try-except代碼塊直觀的方式來處理了:
try:
withopen(filename, 'r+') as fp:
data = fp.read()
exceptIOError:
msg = 'sorry, can not read or write this ' + filename
printmsg
我們?cè)倏匆粋€(gè)多except的例子,2個(gè)數(shù)字相減:
loop = 1
while loop == 1:
try:
a = input('請(qǐng)輸入第一個(gè)數(shù)字> ')
b = input('請(qǐng)輸入第二個(gè)數(shù)字 > ')
exceptNameError:
print "請(qǐng)輸入數(shù)字,不能輸入字母"
continue
exceptSyntaxError:
print "請(qǐng)僅輸入一個(gè)數(shù)字."
continue
print a - b
try:
loop = input('按1再開始 > ')
except (NameError,SyntaxError):
loop = 0
以上二個(gè)例子就是最簡(jiǎn)單的try-except的用法了,如果想要保證腳本的健壯性,后續(xù)可多用try-except代碼塊吧,這會(huì)讓你的代碼看起來更專業(yè)。
總結(jié)
以上是生活随笔為你收集整理的python3捕获异常_python中异常捕获方法详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java map转json字符串_Jav
- 下一篇: pycharm写python字典_pyt