zoukankan      html  css  js  c++  java
  • python inspect.stack() 的简单使用

    1.

    #python
    # -*- encoding: utf-8 -*-
    #获取函数的名字
    import inspect
    def debug():
        callnamer = inspect.stack()
        print('[debug] enter: {}'.format(callnamer))
    
    debug()

    [debug] enter: [FrameInfo(frame=<frame object at 0x000000000096D448>, filename='E:/pythontest/sort.py', lineno=6, function='debug', code_context=[' callnamer = inspect.stack() '], index=0), FrameInfo(frame=<frame object at 0x00000000008F8828>, filename='E:/pythontest/sort.py', lineno=9, function='<module>', code_context=['debug() '], index=0)]

    可以看出是一个列表

    2.选取列表的第二项

    #python
    # -*- encoding: utf-8 -*-
    #获取函数的名字
    import inspect
    def debug():
        callnamer = inspect.stack()[1]
        print('[debug] enter: {}'.format(callnamer))
    
    debug()

    [debug] enter: FrameInfo(frame=<frame object at 0x00000000004A8828>, filename='E:/pythontest/sort.py', lineno=9, function='<module>', code_context=['debug() '], index=0)

    3.选取函数的名字

    #python
    # -*- encoding: utf-8 -*-
    #获取函数的名字
    import inspect
    def debug():
        callnamer = inspect.stack()[1][4]
        print('[debug] enter: {}'.format(callnamer))
    
    debug()

    [debug] enter: ['debug() ']

  • 相关阅读:
    linux下使用OpenCV的一些问题
    Google Colab调用cv2.imshow奔溃
    [LeetCode] Word Search
    信号
    信号
    [Leetcode] Subsets
    [LeetCode] Combinations
    [LeetCode] Minimum Window Substring
    [LeetCode] Set Matrix Zeroes
    sigaction 函数
  • 原文地址:https://www.cnblogs.com/hixiaowei/p/10549731.html
Copyright © 2011-2022 走看看