python 異常處理(try...finally...和with...as 方法)


try...finally... 結構

  我們在執行一長串關聯命令時,會有一個問題,如果當中一個命令失敗了,整個命令串事實上就沒有必要執行下去了。在異常發生時,我們也需要執行一些收場工作。比如 close() 方法關閉文件。這時 try...finally... 結構就可以派上用場了。

try:
    f = open('a.txt', 'w')
    f.write('Hello!')
finally:
    f.close()

  這種結構簡單的說:無論異常是否發生,在程序結束前,finally中的語句都會被執行。

 

with 語句

  try...finally... 雖然好用,但是代碼段有點長。因此python2.5以后引入 with 語句。
  with 語句適用於對資源進行訪問的場合,確保不管使用過程中是否發生異常都會執行必要的“清理”操作,釋放資源,比如文件使用后自動關閉、線程中鎖的自動獲取和釋放等。
  
with open('a.txt', 'w') as f:
    f.write('Hello!')
  和上面 try...finally... 實現一樣的功能。但是代碼精簡很多。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM