3 Python 一般の用語
このドキュメントを読んでいるのなら、モジュール (module)、
拡張モジュール (extension) などが何を表すのかをよく知っているかも
しれません。とはいえ、読者がみな共通のスタートポイントに
立って Distutils の操作を始められるように、ここで一般的な Python 用語
について以下のような用語集を示しておきます:
- モジュール (module)
- Python においてコードを再利用する際の
基本単位: すなわち、他のコードから import されるひとかたまりのコード
です。ここでは、三種類のモジュール: pure Python モジュール、
拡張モジュール、パッケージが関わってきます。
- pure Python モジュール
- Python で書かれ、単一の .py
ファイル内に収められたモジュールです (.pyc かつ/または
.pyo ファイルと関連があります) 。 ``pure モジュール
(pure module)'' と呼ばれることもあります。
- 拡張モジュール (extension module)
- Python を実装している
低水準言語: Python の場合は C/C++ 、 Jython の場合は Java 、
で書かれたモジュールです。
通常は、動的にロードできるコンパイル済みの単一のファイルに入っています。
例えば、Unix向け Python 拡張のための共有オブジェクト (.so) 、
Windows 向け Python 拡張のための DLL (.pyd という拡張子が与えら
れています)、 Jython 拡張のための Java クラスといった具合です。
(現状では、 Distutils は Python 向けの C/C++ 拡張モジュールしか
扱わないので注意してください。)
- パッケージ (package)
- 他のモジュールが入っているモジュールです;
通常、ファイルシステム内のあるディレクトリに収められ、
__init__.py が入っていることで通常のディレクトリと区別
できます。
- ルートパッケージ (root package)
- 階層的なパッケージの根 (root)
の部分にあたるパッケージです。(この部分には __init__.py
ファイルがないので、本当のパッケージではありませんが、便宜上
そう呼びます。) 標準ライブラリの大部分はルートパッケージに入って
います、また、多くの小規模な単体のサードパーティモジュールで、他の
大規模なモジュールコレクションに属していないものもここに入ります。
正規のパッケージと違い、ルートパッケージ上のモジュールの実体は様々な
ディレクトリにあります: 実際は、
sys.path
に列挙されている
ディレクトリ全てが、ルートパッケージに配置されるモジュールの内容に
影響します。
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。