失敗談 技術

「Python3 メモ」 独自例外クラスからの値取得/変数の内容取得

投稿日:2019年8月27日 更新日:

忙しい。。

この時期でなぜか忙しく、ブログ書いてる暇ない。。のでメモ書き程度。
そして、内容をよく忘れるやつ。。

python3の独自例外クラス

例外クラスからの値取得方法をいつも忘れます。
ある関数orクラスから、別のところに例外を投げた際に、値(エラーコード的な)を渡したいときによく使うんですが。。

サンプルは以下の感じです。

$ vi aa.py
class Error(Exception):

    def __init__(self, resp, args):
        self._args = args
        super().__init__(resp)


def func():
    args = dict(ErrorCode='error')
    raise Error(dict(resp=""), args)


try:
    result = func()
except Error as e:
    print(e)
    print(e.args)
    print(e._args)

$ python3 aa.py
{'resp': ''}
({'resp': ''},)
{'ErrorCode': 'error'}

基本は、”args”で値を取ります。継承したクラスで独自に付け加えたいときの例として、暫定的に”_args”で設定しています。

Pythonで変数の内容を取りたいとき

これもよく忘れる。。以下で変数の内容を取得できます。

print(vars(e))

-失敗談, 技術

執筆者:

関連記事

使えるチートシート一覧

チートシートとは 普段使うコードとか、よく忘れやすい、コピペするコードを集めた情報です。 自分が使う言語のチートシートを書いておきます。 チートシート集 URL内容https://github.com …

seaborn + Pandas + Python によるグラフ描画(その2: グラフ描画編)

前回の続き 前回の続きです。 折れ線グラフ まずは折れ線グラフを描画したいと思います。 描画するのは以下です。 運用商品(4つ)日経平均 以下で起動します。引数(dataset-2017-201908 …

見守り用カメラを探したら意外とよかった

過去にこの記事のように実家とのビデオ通話を設定したことがあります。 が、実際には、1回しか使われませんでした。 使われない理由は、おそらく難しいから 設定も難しいですし、そもそも両親が使い始めるのも難 …

SPAMチェック for OCN の アップデート(v0.7.0)

以前、ここで書いたように、SPAMチェックのThunderbirdプラグインを作りました。 そして、Thunderbirdがアップデートしたので、Pluginもアップデートする必要があります。 正直放 …

キーボード買った(Maestro2S 日本語配列)

キーボード購入 キーボードが完全にいかれたので新しいキーボードを買ってきました。 Maestro2S 日本語配列 Maestro2S 日本語配列 です。 画像 実は以前のキーボードとほぼ同じです。違う …

    google オプトアウト Click here to opt-out.