2012-06-27 14 views

Respuesta

8

Usted puede mirar en el interior del propio excepción:

>>> def f(): 
...  f() 
... 
>>> try: 
...  f() 
... except RuntimeError as re: 
...  print re.args, re.message 
... 
('maximum recursion depth exceeded',) maximum recursion depth exceeded 

No creo que se pueda distinguir entre esto y algo meramente pretendiendo ser una excepción de la recursividad de profundidad superado (tiempo de ejecución), sin embargo. message está en desuso, por lo que args es probablemente la mejor opción, y es compatible con Python-3.


Actualización: en Python 3.5, hay una específica RecursionError la que se puede tomar su lugar.

Cuestiones relacionadas