入出力・エラーと例外・クラス・標準ライブラリ・対話環境(7,8,9,10,14章)
次のコードを実行したとき、標準出力に表示される内容の順序として正しいものはどれか。 try: print("A") raise ValueError("err") except ValueError: print("B") else: print("C") finally: print("D")
- AA, B, C, D
- BA, C, D
- ✓A, B, D
- DA, D
解説
tryブロックで例外が発生するとelse節は実行されず、対応するexcept節が実行された後、必ずfinally節が実行される。そのため出力順序はA, B, Dとなる。
根拠Pythonチュートリアル8章 エラーと例外(try/except/else/finallyの実行順序)