【Python】エラーコードとエラーメッセージを含むカスタム例外クラスの作成方法
Pythonでは、Exceptionクラスを継承した独自の例外クラスを定義することで、エラーコードやエラーメッセージを自由に組み込んだカスタム例外を作成できます。ここでは、代表的な実装パターンを2つ紹介します。
エラーコードを持つカスタム例外
まず、例外クラスにエラーコードを持たせる基本的な例です。__init__メソッドでコードを受け取り、インスタンス属性として保持します。
class ErrorCode(Exception):
def __init__(self, code):
self.code = code
try:
raise ErrorCode(401)
except ErrorCode as e:
print("Received error with code:", e.code)このコードを実行すると、次のような出力が得られます。
Received error with code: 401
引数・エラーコード・エラーメッセージを組み合わせたカスタム例外
可変長引数(*args)を活用すれば、エラーコードだけでなく、複数のメッセージやデータをまとめて例外オブジェクトに渡すことも可能です。
class ErrorArgs(Exception):
def __init__(self, *args):
self.args = [a for a in args]
try:
raise ErrorArgs(403, "foo", "bar")
except ErrorArgs as e:
print("%d: %s , %s" % (e.args[0], e.args[1], e.args[2]))実行結果は以下のとおりです。
403: foo , bar
実装のポイント
Exceptionクラスを継承するだけで、独自の例外クラスを簡単に作成できます。__init__メソッド内で属性を定義すれば、エラーコードやメッセージなど任意の情報を保持できます。*argsを使うことで、呼び出し側から柔軟に複数の引数を渡せます。
このようにカスタム例外を活用すると、エラー発生時の状況をより詳細に伝えられ、デバッグやログ出力の精度も向上します。プロジェクトごとに共通の例外クラスを設計しておくと、エラーハンドリングの一貫性も保てるでしょう。
-
Macエラーコード41の原因と対処法を徹底解説
ファイルやフォルダをコピーしようとした瞬間、「この操作は完了できません。予期しないエラーが発生しました(エラーコード -41)」というメッセージとともにMacエラーコード41が表示され、作業が妨げられたことはありませんか?そもそもこのエラーコードは何を意味しているのか、そしてなぜ発生するのか気になりますよね。ご安心ください。本記事では、Macエラーコード41の概要から具体的な解決策まで、わかりやすく解説します。目次:1. Macエラーコード41とは?2. Macエラーコード41の修正方法3. Macでエラーコード41が発生する原因4. Macエラーコード41に関するよくある質問(FAQ)Mac
-
Instagramのメッセージにカスタム絵文字でリアクションする方法【初心者向け完全ガイド】
Instagramは世界で最も利用されているSNSの一つです。フィードへの動画・リール・写真の投稿はもちろん、ストーリーの共有やDM(ダイレクトメッセージ)による気軽なやり取りなど、魅力的な機能が豊富に揃っています。特にダイレクトメッセージ機能は進化が著しく、メッセージに対してカスタム絵文字でリアクションをしたり、「いいね」を送ったりすることも可能です。さらに、一定時間でメッセージが消える「バニラモード」やメッセージの強調表示など、便利な機能も多数搭載されています。 しかし、カスタム絵文字を使ったリアクションの方法を知らないユーザーも少なくありません。そこで本記事では、Instagramのメッ