methaneのブログ

このブログに乗せているサンプルコードはすべてNYSLです。

環境変数PYTHONPATH

意外に知られてない、というか、チュートリアルに載ってない?

Pythonでいろいろスクリプトを作ると、それをどっかのディレクトリに全部放り込んでおいて、好きなときに使いたい。

で、普通はローカルのツールを置きまくったディレクトリにPATHを通して、

 >hello.py

の用に実行するんだけど・・・、Windowsのコマンドプロンプトでは、この方法ではリダイレクトが使えなくなるという問題がある。

で、環境変数PYTHONPATHの出番。
PYTHONPATHは、モジュールの検索パス。モジュールを探す順番が、ローカルディレクトリ→PYTHONPATH→PYTHONの標準ディレクトリになってる。

これを、自分のスクリプトを入れまくったディレクトリに設定しておけば、

 >python -m hello < in_file.txt

の用にリダイレクトが使える。-mはモジュールを実行するっていうオプション。実行するのはファイルじゃなくてモジュールだから、hello.pyじゃなくてhelloになることに注意。

もちろん、自分で作ったスクリプトを、モジュールとしてimportできるという効果もある。これはWindowsでリダイレクトを使うときだけではなく、LinuxやMacでも便利。

ということで、Python使いのみんなは、ちゃんとPYTHONPATHも設定しておきましょうね。