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()
  • 相关阅读:
    VMware Workstation的三种网络连接方式
    sql:unix下的sql操作
    linux脚本: makefile以及链接库
    unix shell: ksh fundamental(Korn Shell)
    linux c: core dump
    linux命令:scp
    Eclipse更改默认工作目录的方法
    linux: 可重入函数与不可重入函数
    linux环境 :Linux 共享库LIBRARY_PATH, LD_LIBRARY_PATH 与ld.so.conf
    linux命令:Linux命令大全
  • 原文地址:https://www.cnblogs.com/paranoia/p/6182277.html
Copyright © 2011-2022 走看看