インポート

公式サイト:

インポートシステム | Python 3.x ドキュメント [公式]

使い方

モジュールをインポートする。

import moduleCode language: Python (python)

モジュールからメソッドをインポートする。

from module import first, secondCode language: Python (python)

別名を付けてインポートする。

import module as hoge
from module import method as fugaCode language: Python (python)

カレントディレクトリから相対パスでインポートする。

from .module import first, second
from . import moduleCode 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 についてまとめる – Qiita

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 の謎 | 開発記録

循環インポートするとどうなるのか | 清水川 Web

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 ドキュメント [公式]

Tips

import の躓きどころ – Qiita

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Protected by reCAPTCHA