Pythonチュートリアル 6章 モジュール(8)
パッケージから * を import
「from パッケージ名 import *」と記述すると、パッケージ内に存在するすべてのモジュールをインポートする事になります。
これには長い時間がかかってしまうこともありますし、あるサブモジュールを import することで、そのモジュールが明示的に import されたときのみ発生して欲しい副作用が起きるかしれません。
この解決策には、パッケージの作者にパッケージの索引を明示的に提供してもらう事にあります。
__init__.py 中に __all__ という変数を定義し、ここにインポートすべきモジュール名のリストを記します。
例)__all__ = [“echo”, “surround”, “reverse”]
これにより「from sound.effects import *」は指定されている3つのサブモジュールがインポートされます。
まとめ
今回は、パッケージから * を import する について説明しました。
次回は、パッケージ内参照 について説明します。
