Python 模擬試験

Python基礎 模擬試験 第5回 問30・8章 エラーと例外(ユーザー定義例外)

ユーザー定義例外の捕捉

次のコードを実行したときの出力として、正しいものを1つ選べ。

class MyError(Exception):
    pass
try:
    raise MyError
except Exception:
    print("caught")
  1. A

    caught

  2. B

    何も出力されず、例外が送出される。

  3. C

    MyError

  4. D

    SyntaxError が発生する。

正解と解説を見る

正解:A

例外のクラスは Exception から派生させる。except 節では、親クラスを指定すると、その派生クラスも捕まえられる。

順実行する行実行後の変数
1`class MyError(Exception):`—
2└ `pass`—
3`try:`—
4`raise MyError`—
5`except Exception:`—
6`print("caught")`—
分岐`except Exception:`実行される
結果実際の出力caught

学習のポイント:except 節の順序は、派生クラスを先に書く。

この問題を演習で解く →

問題一覧へ

このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。