インポート
公式サイト:
インポートシステム | Python 3.x ドキュメント [公式]
使い方
モジュールをインポートする。
import module
Code language: Python (python)
モジュールからメソッドをインポートする。
from module import first, second
Code language: Python (python)
別名を付けてインポートする。
import module as hoge
from module import method as fuga
Code language: Python (python)
カレントディレクトリから相対パスでインポートする。
from .module import first, second
from . import module
Code language: Python (python)
定義されているシンボルを全てインポートする。
from module import *
Code language: Python (python)
ドキュメント:
モジュール | Python 3.x ドキュメント [公式]
参考:
import / from / as – Python でモジュールをインポートする | UX MILK
import の使い方/from、as、PEP8 の推奨スタイル/注意点など | note.nkmk.me
モジュールインポートのしくみ | PythonMatrixJp
import / as / from 文の使い方 | 西住工房
__all__
ドキュメント:
パッケージから * を import する | Python 3.x ドキュメント [公式]
参考:
自作 Package の submodule の import と flake8 – Qiita
__init__.py の __all__ を手作業でメンテナンスしたくない – Qiita
init.py と同じ階層にある Python ファイルを全部 __all__ に突っ込む | hokan
Can someone explain __all__ ? – Stack Overflow
class in init imported but not used – Stack Overflow
サブモジュールをまとめて読み込む
参考:
__init__.py の __all__ を手作業でメンテナンスしたくない – Qiita
循環インポート
参考:
循環インポートになるケースでも型アノテーションができるケースがある、という話 – Qiita
循環インポート問題で見える、__name__ == “__main__” の必要性 – Qiita
循環インポートと cannot import name の謎 | 開発記録
importlib
ドキュメント:
importlib – import の実装 | Python 3.x ドキュメント [公式]
importlib.reload | Python 3.x ドキュメント [公式]
imp
※廃止 (Python 3.4 以降で非推奨となった。役割は importlib に引き継がれた。)
ドキュメント:
imp – import 内部へのアクセス | Python 3.x ドキュメント [公式]
zipimport
ドキュメント:
zipimport – Zip アーカイブからモジュールを import する | Python 3.x ドキュメント [公式]
globals
ドキュメント:
globals | Python 3.x ドキュメント [公式]
site
ドキュメント:
site – サイト固有の設定フック | Python 3.x ドキュメント [公式]
ドキュメント
import 文 | Python 3.x ドキュメント [公式]