- inspect
- stack
Stack trace in Python using inspect
examples/advanced/stack_trace.py
import inspect def first(): second() def second(): for info in inspect.stack(): #print(info) #FrameInfo( # frame=<frame at 0x1c18b18, file 'stack_trace.py', line 9, code second>, # filename='stack_trace.py', # lineno=8, # function='second', # code_context=[' for level in inspect.stack():\n'], # index=0) #print(info.frame) print(info.filename) print(info.lineno) print(info.function) print(info.code_context) print('') def main(): first() if __name__ == '__main__': main()
stack_trace.py 8 second [' for info in inspect.stack():\n'] stack_trace.py 4 first [' second()\n'] stack_trace.py 26 main [' first()\n'] stack_trace.py 30 <module> [' main()\n']