在撰寫程式的時候往往都會有意想不到的「意外」,或是遇到一些「臭蟲」
執行時就會出現錯誤訊息,有時為了避免這樣的錯誤發生,我們經常使用if...elif...else來處理各種錯誤
但是...凡事都有例外,當程式碼越來越龐大,這些錯誤如果依舊用if...elif...else去處理,程式碼會更顯得雜亂
這時我們就需要依靠「例外」來處理了!
目錄:
1. try...except
2. except的種類
1. try...except
依前一話的範例,當使用者輸入了非數字時,程式就會報錯,也就是出現了例外情形,
而且使用者能輸入非數字的情況太多了,如果要用if...elif...else來判斷可說是工程浩大,
此時就能利用try...except來處理
try...except的用法分成兩個部分try及except
(1) try包著可能出現例外的程式碼,也就是使用者輸入資料的那行會出現例外
(2) except為例外處理的方式,顯示提示字串並且再次執行迴圈(Continue),如果用戶輸入的是數字,則不執行例外處理。
2. except的種類
例外的種類非常多,可以參考Python的官方文件(點我)。
例如上述的例子為值的錯誤,由第一張圖的錯誤訊息中看出ValueError,
因此我們也可以針對各種錯誤訊息去做個別處理,如下例子作範例
針對個值錯誤來處理,只要在except後面輸入錯誤訊息的種類(ValueError )加上自己的命名(noninterger)(非必要)
> except ValueError as noninterger:
當例外發生就會像if...elif...else逐行判斷錯誤訊息的種類,如有符合的就會進行相對應的例外處理!
用Python寫程式一點都不困難!
【Python-入門教學】 第一話 : 如何安裝Python?
【Python-入門教學】 第二話 : 用Python向世界問好! 你的第一支程式碼
【Python-入門教學】 第三話 : 這是數字...? 還是..文字?? 辨別資料的型態(型別)
【Python-入門教學】 第四話 : 變數是...會改變的數字? 變數的介紹
【Python-入門教學】 第五話 : 運算子?邊緣子?傻傻分不清楚。數學的基礎,四則運算加減乘除 - 運算子
【Python-入門教學】 第六話 : 字串就像烤串一樣,可拆可串還可算! - 字串的處理
【Python-入門教學】 第七話 : 資料一串接一串,就用串列來處理 - 串列(List)
【Python-入門教學】 第八話 : 不想讓串列元素隨意更動? 改用元組吧! - 元組(tuple)
【Python-入門教學】 第九話 : 我的『字典』裡沒有~放棄,因為我已經在學py了! - 字典(dict)
【Python-入門教學】 第十話 : 通通有~聽口令~集合! - 集合(set)
【Python-入門教學】 第十一話 : 除了算術、指定運算子,還有『比較』和『邏輯』運算子!
【Python-入門教學】 第十二話:如果...我就...不然...,常見的判斷 - if...elif...else
【Python-入門教學】 第十三話 : 日復一日,年復一年,一直重複就是迴圈 - for/while
【Python-入門教學】 第十四話 : 重複做的事情偶爾也想終止或是偷懶一次 - Break/Continue
留言列表