Python異常處理 try、except和else的使用

neuyu發表於2021-09-09

try:執行可能會出錯的試探性語句,即這裡面的語句是可以導致致命性錯誤使得程式無法繼續執行下去

except:如果try裡面的語句無法正確執行,那麼就執行except裡面的語句,這裡面可以是錯誤資訊或者其他的可執行語句

else:如果try裡面的語句可以正常執行,那麼就執行else裡面的語句(相當於程式沒有碰到致命性錯誤)

程式碼:

try:
    # 嘗試開啟一個檔案
    txt = open("1.txt", "r+")

    # 如果無法執行"try"裡面的語句,那麼就執行except裡面的語句  另外需要注意的是,"error"相當於是一個變數,用於儲存錯誤資訊的
except IOError as e:

    print("***開啟檔案成功", e)

    # 如果try裡面的語句成功執行,那麼就執行else裡面的語句
else:
    for eachline in txt.readlines():
        print("成功開啟"+eachline)

        txt.close()
備註

.read() 每次讀取整個檔案,它通常用於將檔案內容放到一個字串變數中。然而 .read() 生成檔案內容最直接的字串表示,但對於連續的面向行的處理,它卻是不必要的,並且如果檔案大於可用記憶體,則不可能實現這種處理。

.readline() 和 .readlines() 之間的差異是後者一次讀取整個檔案,象 .read() 一樣。.readlines() 自動將檔案內容分析成一個行的列表,該列表可以由 Python 的 for ... in ... 結構進行處理。另一方面,.readline() 每次只讀取一行,通常比 .readlines() 慢得多。僅當沒有足夠記憶體可以一次讀取整個檔案時,才應該使用 .readline()。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4550/viewspace-2799372/,如需轉載,請註明出處,否則將追究法律責任。

相關文章