scipy / numpyと同様の構造のパッケージがあり、いくつかのメインサブモジュールがあり、各サブモジュールには、同じ名前空間にフラット化されたさまざまなファイルの関数が含まれています。まあ言ってみれば
package/
sub1/
__init__.py
file1.py
file2.py
そして、sub1/__init__.py
次のようになります。
from .file1 import func1, func2
from .file2 import func3
結果は私ができるということです
import package.sub1
package.sub1.func1()
ただし、問題は、以下が機能しないことです。
>>> import package.sub1
-- change things in file1.py --
>>> reload(package.sub1)
関数は更新されません。代わりに実行すると機能するimport package.sub1.file1
ため、名前空間をフラット化すると、モジュールへの接続が失われます。reload
私の主な質問は、兄弟関数を別々のファイルに書き込むことができるという利点を享受しながら、コマンドをどのように使用できるかということです。