pythonのfrom importでフォルダが認識されない
フォルダにも__init__
が必要
同じ階層にあるファイルで、その.py中に__init__
関数が定義してあれば、
from hoge import Hoge
でいいが、違う階層にあるファイルだと間にフォルダを挟むことになる。
例.
main.py tools L hoge.py
こんな構成の場合は、main.py
に from tools.hoge import Hoge
と書くことになるが、この時点ではtoolsを指定してもエラーになる。
toolsはフォルダなのに__init__
が必要になる。
例.
main.py tools L __init__.py L hoge.py
こういうふうに中身が空の__init__.py
というファイルを用意してやるとちゃんと扱えるようになる。
この方法が普通の方法なのか、はたまた裏ワザ的なものなのかpython3日目の私は判断できないのであった...
python奥が深すぎる