写在前面:最近写python程序,进场遇到异常的问题,因此需要捕获异常。查阅了下资料,整理如下:

常见的异常处理的方法:
假设有下面的一段程序:
try:
    语句1
    语句2
    .
    语句N
except .........:
    print .......
    但是你并不知道“语句1至语句N”在执行会出什么样的异常,但你还要做异常处理,且想把出现的异常打印出来,并不停止程序的运行,
所以在“except ......”这句应怎样来写呢?
至少3个方法:

方法一:捕获所有异常

   1: try:  

   2:     a=b  

   3:     b=c  

   4: except Exception,ex:  

   5:     print Exception,":",ex  

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

       1: import traceback  

       2: try:  

       3:     a=b  

       4:     b=c  

       5: except:  

       6:     traceback.print_exc()  

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

   1: import sys  

   2: try:  

   3:     a=b  

   4:     b=c  

   5: except:  

   6:     info=sys.exc_info()  

   7:     print info[0],":",info[1]  

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

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

   1: try:  

   2:     a=b  

   3:     b=c  

   4: except:  

   5:     f=open("c:log.txt",'a')  

   6:     traceback.print_exc(file=f)  

   7:     f.flush()  

   8:     f.close()  

referer:http://blog.csdn.net/yangchao228/article/details/7425410

[转载]python异常如何全面捕获的更多相关文章

  1. 【python基础语法】OS模块处理文件绝对路径,内置的异常类型、捕获、处理(第9天课堂笔记)

    import os """ 通过文件的路径去打开文件 相对路径:相对当前的工作路径去定位文件位置 .:代表当前路径 ..:代表上一级路径(父级路径) 绝对路径:相对于电脑 ...

  2. python——异常(1),捕获特定异常

    """1.捕获指定异常,异常类型有多种2.若尝试执行的代码异常类型与捕获的异常类型不同则报错3.try下方一般只放一行代码,若有多行可能异常代码,则捕获一个异常类型后函数 ...

  3. [转载]python中的sys模块(二)

    #!/usr/bin/python # Filename: using_sys.py import sys print 'The command line arguments are:' for i ...

  4. python 异常

    引用一段来自菜鸟教程的文章:http://www.runoob.com/python/python-exceptions.html Python 异常处理 python提供了两个非常重要的功能来处理p ...

  5. Python 异常机制

    1.异常基础 在编程过程中为了增加友好性,在程序出现bug时一般不会将错误信息显示给用户,而是现实一个提示的页面,通俗来说就是不让用户看见大黄页!!! try: pass # 程序正常执行时做什么操作 ...

  6. Python异常和异常处理

    Python异常和异常处理2017年12月20日 22:17:08 Megustas_JJC 阅读数:114 标签: python 异常处理 更多 个人分类: Python 版权声明:本文为博主原创文 ...

  7. Python学习手册之Python异常和文件

    在上一篇文章中,我们介绍了 Python 的函数和模块,现在我们介绍 Python 中的异常和文件. 查看上一篇文章请点击:https://www.cnblogs.com/dustman/p/9963 ...

  8. (9)python 异常

    以下程序是python2版本下测试的代码 一.内置异常 没有错误信息的普通异常 raise Exception 添加错误信息的异常 raise Exception ('...错误') 内建异常 异常名 ...

  9. python——异常except语句用法与引发异常

    except: #捕获所有异常 except: <异常名>: #捕获指定异常 except:<异常名1,异常名2):捕获异常1或者异常2 except:<异常名>,< ...

随机推荐

  1. redis实现分布式锁需要考虑的因素以及可重入锁实现

    死锁 错误例子 解决方式  防止死锁 通过设置超时时间  不要使用setnx key   expire 20  不能保证原子性 如果setnx程序就挂了 没有执行expire就死锁了  reidis2 ...

  2. Typora 精美而强大的Markdown编辑器 转

    Typora 精美而强大的Markdown编辑器 Markdown编辑器千千万,可是有颜值.功能强并且免费的,就没有几个了.之前一直在用Mou,分屏预览模式方便得很,是一个非常好的选择.不过这篇可不是 ...

  3. secureCRT The remote system refused the connection.解决办法

    使用远程登录工具SecureCRT登陆ubuntu的时候遇到了这个问题: secureCRT The remote system refused the connection 这个问题的原因是是Ubu ...

  4. vuex之module的使用

    一.module的作用 由于使用单一状态树,应用的所有状态会集中到一个比较大的对象.当应用变得非常复杂时,store 对象就有可能变得相当臃肿. 为了解决以上问题,Vuex 允许我们将 store 分 ...

  5. 什么是平衡树B-Tree?【转】

    转载自:https://www.cnblogs.com/dongguacai/p/7239599.html#commentform B-Tree就是我们常说的B树,一定不要读成B减树,否则就很丢人了. ...

  6. Python爬虫实战—— Request对象之header伪装策略

    在header当中,我们经常会添加两个参数--cookie 和 User-Agent,来模拟浏览器登录,以此提高绕过后台服务器反爬策略的可能性. User-Agent获取 User-Agent可通过随 ...

  7. 关键字this super final static

    this关键字 1.this代表通过当前类实例化成的对象. 2.通过this来获取当前类的属性和方法 3.通过this和区分成员变量和局部变量 4.通过this(参数),调用当前类的构造方法 注意:通 ...

  8. PHP FILTER_SANITIZE_MAGIC_QUOTES 过滤器

    定义和用法 FILTER_SANITIZE_MAGIC_QUOTES 过滤器对字符串执行 addslashes() 函数. 该过滤器在预定义的字符串前面设置反斜杠. 预定义字符是: 单引号(') 双引 ...

  9. PHP FILTER_VALIDATE_INT 过滤器

    定义和用法 FILTER_VALIDATE_INT 过滤器把值作为整数来验证. Name: "int" ID-number: 257 可能的选项或标志: min_range - 规 ...

  10. php网络编程实例

    php网络编程实例 一.总结 一句话总结: socket_create():创建socket socket_bind():绑定IP和端口 socket_listen():监听客户端信息 <?ph ...