Python自定义异常及抛出异常

复制代码
 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")
复制代码

结果:

 

posted @   云山之巅  阅读(7016)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示