1 """ 2 自定義異常 3 """ 4 class MyException(Exception): # 繼承異常類 5 def __init__(self, name, reason): 6 self.name = name 7 self.reason = reason 8 9 from datetime import datetime 10 try: 11 if str(datetime.now()) > "2018": 12 raise MyException("TimeoutException", "time is overtime...") 13 except MyException as e: 14 print(e.name +":"+e.reason) 15 16 """ 17 拋出異常 18 """ 19 try: 20 6/0 21 raise 22 except Exception as e: 23 print(e)
8 try:
9 print("--------------") 10 except NameError as e: # 捕獲NameError類型異常 11 print(e) 12 except Exception as e: # 捕獲其它異常 13 print(e) 14 else: 15 print("沒有異常會接着往下執行。。。") 16 finally: 17 print("最后一定執行。。。") 18 19 # 測試捕獲某種或某些種except 20 try: 21 print(aaa) 22 print("--------------") # 出現異常后不會執行下面的程序 23 except NameError as e: # 捕獲NameError類型異常 24 print(e) 25 except Exception as e: # 捕獲其它異常 26 print(e) 27 else: 28 print("沒有異常會接着往下執行。。。") 29 finally: 30 print("最后一定執行。。。") 31 32 # 測試捕獲其它異常 33 try: 34 open("a.txt") 35 print("--------------") 36 except NameError as e: # 捕獲NameError類型異常 37 print(e) 38 except Exception as e: # 捕獲其它異常 39 print(e) 40 else: 41 print("沒有異常會接着往下執行。。。") 42 finally: 43 print("最后一定執行。。。") 44 45 # 測試異常傳遞 46 def err(): 47 print(aaa) 48 49 try: 50 print("===============") 51 err() 52 except NameError as e: # 捕獲NameError類型異常 53 print(e) 54 55 print("use try will make your code beauty")
結果: