質問: 例えば、RubyやPythonで、ある目的の為に自分で使う用のツール集(メソッド集)のようなものを実装したいときは、どうするものですか? Toolsのような名前のclassを作ってクラスメソッドとして使うのか、moduleなのか、単純に一つのファイルにメソッドを書き並べるのか ある目的のために自分で作ったメソッド(複数)を1回のrequireで使えるようにしたり、irbで使ったりしたいです。 みなさんはどのようにしているのか教えてください。
回答: Pythonではパッケージにまとめると便利です。 まずは、特定のディレクトリ下`/home/mylib`などにパッケージとしてまとめます。 参考:Pythonでパッケージを作成する方法 これで、以下のように呼出側のソースでモジュールパスを追加することで利用できます。 ``` import sys sys.path.append('/home/mylib') # パスの追加 import mylib~ : ``` が、パスの追加を各ソースで行うのは面倒です。 そこで、Pythonのデフォルト検索パスにモジュールパスを追加することで、パスを意識せず`import mylib~`などと利用できるようになります。 参考:Pythonでデフォルトパスを追加する方法 さらに、配布可能なパッケージとしてまとめるとバージョン管理もできて便利そうです。 参考:Python: 自作パッケージにデータファイルを含める 自分はデフォルトパスを追加する方法を採っています。 ちなみに、パッケージ内でモジュール、クラス、メソッドをどのように配置するかはpythonでは特に決まりはありません。 1ファイル内に複数クラスを配置もしてもよいですので、お好みで。