I love being able to modify the arguments the get sent to a function, using settrace, like :
settrace
import sys def trace_func(frame,event,arg): va
I made a module called pycallgraph which generates call graphs using sys.settrace().
sys.settrace()