Use traceback. Print_stack() docs.python.org/library/traceback.html#t... suxmac2 $ python out. Py File "out.Py", line 16, in a() File "out.
Py", line 5, in a b() File "out. Py", line 11, in be traceback. Print_stack().
– Blackmoon May 22 at 9:33 traceback. Print_exception(*sys. Exc_info()) – Keith May 22 at 9:36 @Keith that has the same effect as traceback.
Print_exc() – tolomea May 22 at 10:51 I could call them both and merge the output, but it seems unlikey that the standard library doesn't cover this already, in essence I just want the same information that I'd get if I let the exception propagate to the top level – tolomea May 22 at 10:53.
The answer is right in front of you. From the python docs: traceback. Print_exc(limit, file) Have a constant somewhere that defines a very high limit.
If you want to make sure you ALWAYS get the full trace, you can do this: import sys traceback. Print_exc(limit=sys. Getrecursionlimit()) Placing this into your code: import sys import traceback def a(): b() def b(): try: c() except: traceback.
Print_exc(limit=sys. Getrecursionlimit()) def c(): assert False a().
With that said, I would use a lower limit. I can assure you that you probably don't want to print the full stack trace for a max recursion overflow- which would typically be at least 10,000 levels deep. A limit of 20 is probably plenty.
If you can't figure out what in your code is failing with the last 20 function calls, you should re-evaluate your design... – Namey May 22 at 18:06 This produces the same result as my first snippet. Did it do something different for you? – tolomea May 23 at 1:58.
I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.