例外処理・ファイル操作・クラス基礎応用問題

以下のコードを実行したときに、catch_exception関数の戻り値として得られるのはどれですか? def catch_exception(): try: result = 10 / 0 except ZeroDivisionError: return "ZeroDivisionError caught" finally: print("Finally block") return "No exception"

A."No exception"
✗ except ブロック内の return により、この行に到達する前に関数は終了します。
B."ZeroDivisionError caught"← 正解
✓ 正解です。ZeroDivisionError が発生し except ブロックの return が実行されます。finally は実行されますが戻り値には影響しません。
C.None
✗ try-except-finally で例外が処理されるため None は返されません。
D."Finally block"
✗ print の出力値ではなく、関数の戻り値として "ZeroDivisionError caught" が返されます。

Python 3 エンジニア認定基礎試験 の問題一覧