python如何寫try語句
python的try語句有兩種風格
一是處理異常(try/except/else)
二是無論是否發生異常都將執行最後的程式碼(try/finally)
try/except/else風格
try: <語句>#執行的程式碼 except<名字>: <語句>#如果在try部份引發了'name'異常 except<名字>,<資料>: <語句>#如果引發了'name'異常,獲得附加的資料 else: <語句>#如果沒有異常發生
try的工作原理是,當開始一個try語句後,python就在當前程式的上下文中作標記,這樣當異常出現時就可以回到這裡,try子句先執行,接下來會發生什麼依賴於執行時是否出現異常。
1、如果當try後的語句執行時發生異常,python就跳回到try並執行第一個匹配該異常的except子句,異常處理完畢,控制流就通過整個try語句(除非在處理異常時又引發新的異常)。
2、如果在try後的語句裡發生了異常,卻沒有匹配的except子句,異常將被遞交到上層的try,或者到程式的最上層(這樣將結束程式,並列印預設的出錯資訊)。
3、如果在try子句執行時沒有發生異常,python將執行else語句後的語句(如果有else的話),然後控制流通過整個try語句。
try/finally風格
try: <語句> finally: <語句>#退出try時總會執行
python總會執行finally子句,無論try子句執行時是否發一異常。
1、如果沒有發生異常,python執行try子句,然後是finally子句,然後繼續。
2、如果在try子句發生了異常,python就會回來執行finally子句,然後把異常遞交給上層try,控制流不會通過整個try語句。
當你想無論是否發生異常都確保執行某些程式碼時,try/finally是有用的。
這個在開啟檔案的時候有用 finally總是在最後close()檔案
try語句子句形式表
- except: 捕獲所有異常
- except name: 只捕獲特定的異常
- except name,value: 捕獲異常和它的附加資料(將異常的資訊儲存到value,)
- except (name1,name2): 捕獲任何列出的異常
- else: 如果沒有異常
- finally: 總是執行
try: f=open('file.txt') exceptIOError,e: printe else: print'wrong'
[Errno2]Nosuchfileordirectory:'file.txt'
最新的python版本 支援try/except/finally
1:如果x沒有異常,執行z,i
2:如果x有異常:
一:如果except捕捉到異常則執行y,i
二:沒捕捉到,執行i,然後返回內建異常處理
try: x except(name): y else: z finally: i
到此這篇關於python如何寫try語句的文章就介紹到這了,更多相關python寫try語句的方法內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!