博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python中try except处理程序异常的三种常用方法
阅读量:6237 次
发布时间:2019-06-22

本文共 887 字,大约阅读时间需要 2 分钟。

如果你在写python程序时遇到异常后想进行如下处理的话,一般用try来处理异常,假设有下面的一段程序:

1
2
3
4
5
6
7
8
try
:
    
语句
1
    
语句
2
    
.
    
.
    
语句N
except 
.........:
    
do something .......

但是你并不知道"语句1至语句N"在执行会出什么样的异常,但你还要做异常处理,且想把出现的异常打印出来,并不停止程序的运行,所以在"except ......"这句应怎样来写呢?

总结了一下3个方法

方法一:捕获所有异常

1
2
3
4
5
try
:  
    
a
=
b  
    
b
=
c  
except 
Exception,e:  
    
print 
Exception,
":"
,e

方法二:采用traceback模块查看异常

1
2
3
4
5
6
7
#引入python中的traceback模块,跟踪错误
import 
traceback  
try
:  
    
a
=
b  
    
b
=
c  
except
:  
    
traceback.print_exc()

方法三:采用sys模块回溯最后的异常

1
2
3
4
5
6
7
8
#引入sys模块
import 
sys  
try
:  
    
a
=
b  
    
b
=
c  
except
:  
    
info
=
sys.exc_info()  
    
print 
info[
0
],
":"
,info[
1
]

但是,如果你还想把这些异常保存到一个日志文件中,来分析这些异常,那么请看下面的方法:

把 traceback.print_exc() 打印在屏幕上的信息保存到一个文本文件中

1
2
3
4
5
6
7
8
9
import 
traceback
try
:  
    
a
=
b  
    
b
=
c  
except
:  
    
f
=
open
(
"c:log.txt"
,
'a'
)  
    
traceback.print_exc(
file
=
f)  
    
f.flush()  
    
f.close()
本文转自 奚落123 51CTO博客,原文链接:http://blog.51cto.com/guyuyuan/1935004,如需转载请自行联系原作者
你可能感兴趣的文章
关于未捕获异常(Uncaught Exception)的处理
查看>>
Windows2003下面文件夹带权限移动
查看>>
怎么样将自己开发的Android应用程序编译到系统Image中
查看>>
kali 安装完成后,无法进入界面
查看>>
TortoiseSvn问题汇总(持续更新)
查看>>
html5中的锚点特效
查看>>
我的友情链接
查看>>
超时机制的简单实现
查看>>
maillog中不记录收发的邮件
查看>>
CentOS 开机自动联网
查看>>
windows:查看进程路径及PID,并杀掉进程
查看>>
JSP语法之八大隐式对象
查看>>
我的友情链接
查看>>
jumpserver的部署
查看>>
Python读写配置文件的实际操作步骤解析
查看>>
112 - Tree Summing
查看>>
sicily 1151. 魔板[Special judge]
查看>>
LNMP——搭建
查看>>
matlab-基础 class 获取变量的类型
查看>>
去IBM面试后的感受
查看>>