dropping into the debugger on an exception
Fernando Perez
fperez528 at yahoo.com
Wed Jun 9 21:23:26 EDT 2004
Jon Perez wrote:
> (sorry for the duplicate post, just wanted to make the subject
> line clearer)
>
> How do you set up pdb such that you will automatically
> get dropped into its prompt if an unanticipated exception
> occurs in a script you are using?
You may want to try out ipython (http://ipython.scipy.org). It does exactly
what you want (and a lot more):
In [1]: cd ~/test
/usr/local/home/fperez/test
In [2]: pdb
Automatic pdb calling has been turned ON
In [3]: run error
hi
Ramp time: 0.0
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
/usr/local/home/fperez/test/error.py
109
110 print 'speedup:',Rtime/RNtime
111
112
--> 113 if __name__ == '__main__': main()
/usr/local/home/fperez/test/error.py in main()
104 array_num = zeros(size,'d')
105 for i in xrange(reps):
--> 106 RampNum(array_num, size, 0.0, 1.0)
107 RNtime = time.clock()-t0
108 print 'RampNum time:', RNtime
/usr/local/home/fperez/test/error.py in RampNum(result, size, start, end)
88 tmp = zeros(1e2)
89 step = (end-start)/(size-1-tmp)
---> 90 result[:] = arange(size)*step + start
91
92 def main():
ValueError: frames are not aligned
> /usr/local/home/fperez/test/error.py(90)RampNum()
-> result[:] = arange(size)*step + start
(Pdb) print start
0.0
You can then quit pdb, type 'pdb' again to disable the feature, and move on.
Cheers,
f
More information about the Python-list
mailing list