zoukankan      html  css  js  c++  java
  • python之traceback

    traceback 模块允许你在程序里打印异常的跟踪返回 (Traceback)信息

    1.1 traceback.print_exc()

    File: traceback-example-1.py
    
    # note! importing the traceback module messes up the
    # exception state, so you better do that here and not
    # in the exception handler
    # 注意! 导入 traceback 会清理掉异常状态, 所以
    # 最好别在异常处理代码中导入该模块
    
    import traceback
    
    try:
        raise SyntaxError, "example"
    except:
        traceback.print_exc()
    
    Traceback (innermost last):
      File "traceback-example-1.py", line 7, in ?
    SyntaxError: example
    

    1.2 traceback.extract_tb

    File: traceback-example-3.py
    
    import traceback
    import sys
    
    def function():
        raise IOError, "an i/o error occurred"
    
    try:
        function()
    except:
        info = sys.exc_info()
        for file, lineno, function, text in traceback.extract_tb(info[2]):
            print file, "line", lineno, "in", function
            print "=>", repr(text)
    
        print "** %s: %s" % info[:2]
    
    traceback-example-3.py line 8 in ?
    
    => 'function()'
    
    traceback-example-3.py line 5 in function
    
    => 'raise IOError, "an i/o error occurred"'
    
    ** exceptions.IOError: an i/o error occurred
    

    1.3 traceback.extract_stack

    import sys,traceback,os
    
    def lumberjack():
        bright_side_of_death()
    
    def bright_side_of_death():
        print traceback.extract_stack()
        return 0
    
    if __name__ == '__main__':
        lumberjack()
    

    运行结果:

    [('D:\train\python\sample\traceback\sample.py', 12, '<module>', 'lumberjack()'), ('D:\train\python\sample\traceback\sample.py', 4, 'lumberjack', 'bright_side_of_death()'), ('D:\train\python\sample\traceback\sample.py', 8, 'bright_side_of_death', 'print traceback.extract_stack()')]
    

      

      

  • 相关阅读:
    Android学习总结——实现Home键功能
    Android学习总结——SQLite
    Android学习总结——文件储存
    Android学习总结——SharedPreferences
    Android学习总结——Content Provider
    Android学习总结——Service组件
    IDEA 创建和使用tomcat
    IDEA 图标介绍。 缓存和索引介绍、清理方法和Debug使用
    IDEA 常用快捷键
    IntelliJ IDEA常用设置(一)
  • 原文地址:https://www.cnblogs.com/hester/p/8304920.html
Copyright © 2011-2022 走看看