fork download
  1. import sys
  2. import traceback
  3.  
  4. def dump_stack(file=sys.stdout):
  5. print(
  6. *traceback.StackSummary.extract(
  7. traceback.walk_stack(sys._getframe(1)), capture_locals=True
  8. ).format(), sep='\n', file=file
  9. )
  10.  
  11. def foo(b):
  12. c = b + 1
  13. dump_stack()
  14.  
  15. a = 1
  16. foo(a)
Success #stdin #stdout 0.04s 9868KB
stdin
Standard input is empty
stdout
  File "./prog.py", line 13, in foo
    b = 1
    c = 2

  File "./prog.py", line 16, in <module>
    __annotations__ = {}
    __builtins__ = <module 'builtins' (built-in)>
    __cached__ = None
    __doc__ = None
    __file__ = '/home/bgjPHS/./prog'
    __loader__ = <_frozen_importlib_external.SourcelessFileLoader object at 0x14ca185e5c10>
    __name__ = '__main__'
    __package__ = None
    __spec__ = None
    a = 1
    dump_stack = <function dump_stack at 0x14ca185b2040>
    foo = <function foo at 0x14ca183b7160>
    sys = <module 'sys' (built-in)>
    traceback = <module 'traceback' from '/usr/lib/python3.9/traceback.py'>