概要
Python で独自のエラークラスを作成する方法を紹介します
環境
- macOS 11.5
- Python 3.8.3
サンプルコード
class InvalidStringError(Exception):
def __init__(self, name):
self.message = "A name of {} has an invalid character.".format(name)
def check_name(name):
if 'z' in name:
raise InvalidStringError(name)
return True
try:
check_name("hawk")
check_name("hawkz")
except InvalidStringError as e:
print(e.message)
少し解説
Exception を継承して作成します 共通のメッセージや共通のパラメータを管理するのであれば一段 Base を挟んで継承すると良いと思います
コンストラクタは定義しなくても OK ですが message などは最低限必要になるので設定できるようにしておくと良いと思います
使用する場合は普通に raise すれば OK です エラーも execpt で検出することができます
0 件のコメント:
コメントを投稿