---
# System prepended metadata

title: 'try ,except '
tags: [課堂筆記]

---

## try exception
```python=

try:    #try包住的範圍發生錯誤就會執行except的指令
    print(1/0)
except TypeError:   #如果屬於TypeError
    print('型別發生錯誤')
except NameError:   #如果屬於NameError
    print('使用沒有被定義的對象')
except Exception as x:   #也可以把erroe統稱為"Exception"
    print('不知道怎麼了，反正發生錯誤惹')
    print(x)    #使用 Exception as..  可以把錯誤名稱當作變數印出來

```

```python=
try:      
    for x in range(4):                
        a = int(input('輸入數字1~10：')) 
        if a >10:
            raise Exception("out of range") #如果要強制中斷程式並執行錯誤-->raise("顯示訊息")   
        print(a + 1)    #此時"out of range"是我自己定義的錯誤，所以用Exception加上(自訂訊息即可)
        
except ValueError:                   
    print('發生錯誤,輸入非數字')
else:   #沒有錯誤才會執行
    print("輸入無誤並正確執行!!")
finally:    #不管有沒有錯都會執行
    print("使用完畢")
```