🤖
Pythonの__init__についてメモ
init.py ってなにもの
myDir
- __init_.py
- sample.py
main.py
みたいにいるファイル、何者なのか
Pythonにおける定義(イメージ)
モジュール => pythonのファイル
パッケージ => ディレクトリとその中身
myDir
- __init_.py
- sample.py
main.py
この時、myDirはパッケージで、sample.pyはモジュール
__init__.py
はこのパッケージに何があるかをまとめる場所
(もともとは、単一モジュールのパッケージを呼び出す際に短縮する方法だった?)
import myDir
myDir() # myDir/__init_.pyに定義されたものが出力される
all と import *
from myDir import *
を使用する時に、__init__.py
に__all__
を定義しておくことで、パッケージ配下のモジュールを全て読み込める
myDir
- __init__.py
- sample1.py
- sample2.py
- sample3.py
__init__.py
import sample1
import sample2
import sample3
__all__ = ['sample1','sample2','sample3']
from myDir import *
sample1()
sample2()
sample3()
と呼べるようになる
Discussion