zoukankan      html  css  js  c++  java
  • python中try except处理程序异常的三种常用方法

     

     
     

    如果你在写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()

    【转自】网络~

  • 相关阅读:
    找到IOS中的闪退日志
    day10-单元测试用例
    1、MySQL索引优化分析
    大话处理器-第2章-初识处理器
    sunset: dusk
    CK: 00
    My File Server: 1
    [luogu 5049] 旅行(数据加强版)
    [luogu p1081] 开车旅行
    [luogu p1613] 跑路
  • 原文地址:https://www.cnblogs.com/yanhuidj/p/9018430.html
Copyright © 2011-2022 走看看