python中用try来处理程序异常的集中常用方法

简介:

 

 
  1. 如果你在写python程序时遇到异常后想进行如下处理的话,一般用try来处理异常,假设有下面的一段程序: 
  2. try
  3.     语句1 
  4.     语句2 
  5.     . 
  6.     语句N 
  7. except .........: 
  8.     print ....... 
  9.  
  10. 但是你并不知道"语句1至语句N"在执行会出什么样的异常,但你还要做异常处理,且想把出现的异常打印出来,并不停止程序的运行,所以在"except ......"这句应怎样来写呢? 
  11.  
  12. 总结了一下至少3个方法: 
  13.  
  14. 方法一:捕获所有异常 
  15.  
  16. try
  17.     a=b 
  18.     b=c 
  19. except Exception,e: 
  20.     print Exception,":",e 
  21.  
  22. 方法二:采用traceback模块查看异常 
  23.  
  24.  
  25. import traceback 
  26. try
  27.     a=b 
  28.     b=c 
  29. except
  30.     traceback.print_exc() 
  31.  
  32. 方法三:采用sys模块回溯最后的异常 
  33.  
  34. import sys 
  35. try
  36.     a=b 
  37.     b=c 
  38. except
  39.     info=sys.exc_info() 
  40.     print info[0],":",info[1
  41.  
  42. 但是,如果你还想把这些异常保存到一个日志文件中,来分析这些异常,那么请看下面的方法: 
  43. 把 traceback.print_exc() 打印在屏幕上的信息保存到一个文本文件中 
  44.  
  45. try:   
  46.     a=b   
  47.     b=c   
  48. except:   
  49.     f=open("c:log.txt",'a')   
  50.     traceback.print_exc(file=f)   
  51.     f.flush()   
  52.     f.close()   



本文转自 lover00751CTO博客,原文链接:http://blog.51cto.com/wangwei007/1113007,如需转载请自行联系原作者

相关文章
|
1天前
|
SQL 关系型数据库 数据库连接
使用 Python 访问数据库的基本方法
【5月更文挑战第12天】在Python中操作数据库涉及安装数据库驱动(如mysql-connector-python, psycopg2, pymongo)、连接数据库、执行查询/更新、处理结果集及关闭连接。使用ORM(如SQLAlchemy)可简化操作。通过上下文管理器(with语句)能更好地管理资源和错误。注意根据实际需求处理事务、错误和安全性,例如使用SSL连接。
11 2
|
2天前
|
Python
【Python进阶(二)】——程序调试方法
【Python进阶(二)】——程序调试方法
|
2天前
|
Python
【Python进阶(一)】——异常与错误
【Python进阶(一)】——异常与错误
|
2天前
|
Python
Python的全局变量作用于整个程序,生命周期与程序相同,而局部变量仅限函数内部使用,随函数执行结束而销毁。
Python的全局变量作用于整个程序,生命周期与程序相同,而局部变量仅限函数内部使用,随函数执行结束而销毁。在函数内部修改全局变量需用`global`关键字声明,否则会创建新局部变量。
9 2
|
3天前
|
Python Windows
python中的异常与模块
python中的异常与模块
9 1
|
4天前
|
存储 Linux Shell
python移除/删除非空文件夹/目录的最有效方法是什么?
python移除/删除非空文件夹/目录的最有效方法是什么?
8 0
|
5天前
|
消息中间件 程序员 调度
Python并发编程:利用多线程提升程序性能
本文探讨了Python中的并发编程技术,重点介绍了如何利用多线程提升程序性能。通过分析多线程的原理和实现方式,以及线程间的通信和同步方法,读者可以了解如何在Python中编写高效的并发程序,提升程序的执行效率和响应速度。
|
5天前
|
缓存 Shell 开发工具
[oeasy]python0016_在vim中直接运行python程序
在 Vim 编辑器中,可以通过`:!`命令来执行外部程序,例如`:!python3 oeasy.py`来运行Python程序。如果想在不退出Vim的情况下运行当前编辑的Python文件,可以使用`%`符号代表当前文件名,所以`:!python3 %`同样能运行程序。此外,可以使用`|`符号连续执行命令,例如`:w|!python3 %`会先保存文件(`w`)然后运行Python程序。这样,就可以在不离开Vim的情况下完成编辑、保存和运行Python程序的流程。
16 0
|
6天前
|
Python
【Python 基础】Python中的实例方法、静态方法和类方法有什么区别?
【5月更文挑战第6天】【Python 基础】Python中的实例方法、静态方法和类方法有什么区别?
|
4月前
|
Python
python中的异常处理(try,except,else, finally)
python中的异常处理(try,except,else, finally)
34 0