Flaskのimportでつまずいた話(Python の import を階層構造で )
Flask を学習し始めたのですが、
__init__.py
from flask import Flask app = Flask(__name__) from app import views
としててのっけから??となってしまいました。
- なんで一番下でもっかいimport?
- appなんてモジュール入れてないよ?
と。
1は
Larger Applications — Flask Documentation (0.10)
のCircular Importsに書いてあったのですが、循環importを解決するのにそうしてるとのこと(はっきり理解したわけではないのでまた調べたいです)
2はディレクトリの構造が
app |-__init__.py |-views.py
となってたのですが、__init__.pyがあるとそこのフォルダ(今回はapp)をまるっとモジュールとして扱えるようになるんですね(パッケージ化)。
6. モジュール — Python 2.7.x ドキュメント
それでfrom app import viewsなんて出来たのだと。
まだ勉強中ですが、ちょこちょこ備記録代わりに上げてけたらなあと