Pythonのソースディレクトリにある__init__.py
は何のためにあるのですか?
以前は、パッケージの必須部分でした(古い、3.3以前の「通常のパッケージ」ではなく、新しい3.3+「名前空間パッケージ」)。
Pythonは2種類のパッケージ、レギュラーパッケージと名前空間パッケージを定義しています。レギュラーパッケージは、Python 3.2以前に存在していた伝統的なパッケージです。レギュラーパッケージは通常、
__init__.py
ファイルを含むディレクトリとして実装されます。レギュラーパッケージがインポートされると、この__init__.py
ファイルが暗黙のうちに実行され、定義されているオブジェクトはパッケージの名前空間の名前に束縛されます。__init__.py
ファイルには、他のモジュールと同じ Python コードを含めることができ、モジュールがインポートされると、Python はモジュールにいくつかの追加属性を追加します。
このリンクをクリックすると、例や詳細情報、名前空間パッケージの説明があります。これは __init__.py
を持たないパッケージの種類です。