2018-04-01から1ヶ月間の記事一覧

ArgparserとConfigparser

Deep Learning関連のプログラムを試していると、やたらと設定パラメタが多い。 これまではargparseを使ってきたけど、コードが煩雑になるのでconfigファイルの扱い方を調べてみた。 argparse まずはargparseの基本的な使い方。 import argparse parser = arg…

pythonでのログ(logging)

ロガーは名前で管理される。逆に、同じ名前のロガーは同じものとして扱われる。 それを利用するために、モジュール側ではモジュール名(name)をロガーの名前にしておいて、ユーザ側はモジュールの名前を指定することで当該のロガーを取得して、個別に設定する…

Pythonでのインターフェイス(ABCモジュール)

pythonでインターフェイスのようなことをやりたい場合にはABCモジュールというのが使えるようだ。 でも、あんまり使っている印象はなく、raise NotImplementedErrorで簡易的に代用している場合が多いようだ。 ABCモジュールを使わない場合 簡易的にraise Not…

pythonのパッケージとimport

パッケージの構成 リポジトリ名とパッケージ名は同じになる(ことが多い)。パッケージは小文字で、アンダースコアも(なるべく)使わず。モジュールは小文字でスネーク。(クラスはキャメルケース) 基本的にはtestはpackageの各ディレクトリ、ファイルと対応する…