【Pythonメモ 】例外を呼び出し元に送信する方法
この記事はQiitaの記事をエクスポートしたものです。内容が古くなっている可能性があります。
・関数内のexcept内で、raiseを行うことで例外を呼び出し元に送信することができる。
呼び出し元に例外を送信するサンプル
#!/usr/bin/python # -*- Coding: utf-8 -*- class Hoge(object): def huga(): try: raise TypeError('TYPE ERROR!') except Exception as e: raise # 呼び出し元に送信 try: huga() except Exception as e: print(type(e)) # 1回目のエラー出力
・関数内でエラーを出力して、呼び出し元に例外を送信することも可能。
関数内でエラー出力後、呼び出し元に例外を送信するサンプル
#!/usr/bin/python # -*- Coding: utf-8 -*- class Hoge(object): def huga(): try: raise TypeError('TYPE ERROR!') except Exception as e: print(type(e)) # 1回目のエラー出力 raise # 呼び出し元に再送 try: huga() except Exception as e: print(type(e)) # 2回目のエラー出力
上記のexcept内にloggingを使用すれば、関数内のローカル変数をログに出力を行い、呼び出し元で別のログ出力することができる。