7
try:
recursive_function()
except RuntimeError e:
# is this a max. recursion depth exceeded exception?
最大再帰の深さに達したときはどうすればわかりますか?どのようにして最大値を検出するのですか?再帰の深さがPythonの例外を超えましたか?
try:
recursive_function()
except RuntimeError e:
# is this a max. recursion depth exceeded exception?
最大再帰の深さに達したときはどうすればわかりますか?どのようにして最大値を検出するのですか?再帰の深さがPythonの例外を超えましたか?
あなたは例外自体の内部を見ることができます:私はあなたがこの単にしかし、再帰-深度超過(ランタイム)例外を装って何かを区別することができるとは思わない
>>> def f():
... f()
...
>>> try:
... f()
... except RuntimeError as re:
... print re.args, re.message
...
('maximum recursion depth exceeded',) maximum recursion depth exceeded
。 message
は推奨されていませんので、おそらくargs
が最良の賭けであり、Python-3と互換性があります。
更新:Pythonの3.5で、あなたが代わりにキャッチすることができ、特定のRecursionError
があります。