1. ホーム
  2. python

[解決済み] Pythonモジュールのソースの場所を見つけるにはどうしたらいいですか?

2022-03-18 22:50:57

質問

あるPythonモジュールのソースファイルがどこにインストールされているかを知るにはどうしたらよいですか?WindowsとLinuxでは方法は違うのでしょうか?

のソースを探そうとしています。 datetime モジュールは特にそうですが、もっと一般的な答えにも興味があります。

どのように解決するのですか?

純粋なPythonモジュールの場合は、次の場所でソースを見つけることができます。 themodule.__file__ . しかし、datetimeモジュールはCで書かれているため datetime.__file__ は.soファイルを指しています(.soファイルには datetime.__file__ Windowsの場合)、そのため、ソースを見ることができません。

Pythonのソースのtarballをダウンロードして展開すると、モジュールのコードは モジュール サブディレクトリに格納されます。

例えば、python 2.6のdatetimeのコードを見つけたい場合、以下の場所を調べます。

Python-2.6/Modules/datetimemodule.c

また、Mercurial の最新バージョンは、ウェブ上で次のように見つけることができます。 https://hg.python.org/cpython/file/tip/Modules/_datetimemodule.c