前提
『Google Cloud Platform GAEソフトウェア開発入門――Google Cloud Authorized Trainerによる実践解説 Software Design plus』を読んでGCPとPythonを勉強しているのですが、最初のステップで躓いています。
実現したいこと
第四章 GAEアプリケーション作成の項目で、WEBでプレビューするところでエラーが発生してしまい、動作しない状態です。
サンプルコードは以下の通りです。
from flask import Flask app = Flask(__name__) @app.route('/') def home(): return 'Hello World!' if __name__ == '__main__': app.run(host='127.0.0.1', port=8080, debug=True)
Traceback (most recent call last): File "/home/kolon_las_casas/gae-study/example/main.py", line 1, in <module> from flask import Flask File "/home/kolon_las_casas/gae-study/example/env/lib/python3.9/site-packages/flask/__init__.py", line 14, in <module> from jinja2 import escape ImportError: cannot import name 'escape' from 'jinja2' (/home/ユーザー名/gae-study/example/env/lib/python3.9/site-packages/jinja2/__init__.py)
試したこと
原因として、古い本のためバージョン違いによるものだと考えられます。
jinja2が廃止になっているようなので、入れ直す必要があるのかなとおもい、確認したら入っていました。
ただ、コマンドで確認したところ、jinja2が入っていました。
$ pip list Package Version ------------- ------- click 8.1.3 Flask 1.1.1 itsdangerous 2.1.2 Jinja2 3.1.2 MarkupSafe 2.1.1 pip 20.3.4 pkg-resources 0.0.0 setuptools 44.1.1 Werkzeug 2.2.2
今の標準がPython3.9で、この本では3.7になります。
最初はPython3.7に戻すのかと思ったのですが、どうやら違うようです。
どのように対処すればよろしいでしょうか?
