Pythonでライブラリ(モジュールやパッケージ)がどのディレクトリに入っているのか、その場所を調べる方法について説明します。ライブラリの場所は、モジュールの __file__
アトリビュートか __path__
アトリビュートで調べることができます。
import datetime
print(datetime.__file__) # datetimeモジュールの場所
import json
print(json.__path__) # jsonパッケージの場所
__file__
と __path__
には次のような違いがあります。
__file__
: モジュールの本体か__init__.py
の絶対パス__path__
: パッケージのディレクトリの絶対パス(の配列)
なので、 __file__
はそのライブラリがモジュール(1ファイルのライブラリ)の場合でもパッケージ(複数ファイルのライブラリ)の場合でも動作しますが、 __path__
の方はパッケージの場合限定のアトリビュートとなるようです。
この情報がPythonのライブラリの場所を確認する際に役立つことを願っています。