テストソースと結果
こんなものは調べる必要もなく、とにかくやってみればいいんです!
最低限のソースで二重にしたtry…exceptを作ってやってみます
try:
# 内側でエラーを発生させる
print("確認1")
try:
print("確認2")
raise Exception("内側エラー")
except Exception as e:
print(e)
else:
print("正常1")
# 外側でエラーを発生させる
print("確認3")
raise Exception("外側エラー")
except Exception as e:
print(e)
else:
print("正常2")
'''
出力結果
確認1
確認2
内側エラー
確認3
外側エラー
'''
下部の出力結果の通りではありますが、ネストした場合はちゃんと内側のtryだけで完結して外側のtryには影響ありませんでした
つまり全体をtryの中に入れつつ、個別エラー検知用のtryを使っても問題ないってこと
VSCodeのデバックで実行経路を確認
視覚的に確認した方がわかりやすいと思うのでgifも貼っておきます
あとがき
想定通りと言うか希望通りの動きだったので一安心
あまりネストし過ぎると可読性が悪くなりそうだしほどほどに・・・
コメント