1. 程式人生 > >python獲取呼叫棧中的函式資訊

python獲取呼叫棧中的函式資訊

匯入sys模組,

sys._getframe(i)表示棧中第i層,i=0表示棧頂

sys.getframe(i).f_code.co_name表示第i層的函式

例如

import treePlotter as tp
import sys

def a():
    b()
def b():
    c()
def c():
    print(sys._getframe(0).f_code.co_name)
    print(sys._getframe(1).f_code.co_name)
    print(sys._getframe(2).f_code.co_name)
a()
返回值為

D:\python\python.exe F:/python/Tree/two.py
c
b
a


Process finished with exit code 0