例外の連鎖
raise 文では from を使い、例外を連鎖することが出来ます。
これは例外を変換するときに便利です。
3行目のfunc()関数の中で例外(ここでは、IOError)を強制的に発生させています。
このエラーを11行目で、とらえて元の例外情報をつけて、新たな例外(ここでは、RuntimeError)を投げています。
また、元の例外を無視して、新たな例外を投げる方法は、14行目で(ここではコメント行となっていますが)、from None と記述します。
まとめ
今回は、例外の連鎖 について説明しました。
次回は、ユーザー定義例外 について説明します。