Lars Blumberg Lars Blumberg - 21 days ago 16
Python Question

How to use Python 3 with Google App Engine's Local Development Server

I've got a local Python application configured with

runtime: python


in it's
app.yaml
file. When starting the local development server with

dev_appserver.py app.yaml


all is fine.

Since GAE's Local Development Server uses Python2.7 by default, I now want to make use of Python3.x instead. According to Google's documentation, we have to use the flexible environment. Thus I'm changing
app.yaml
to:

runtime: python
env: flex

runtime_config:
python_version: 3


Now
dev_appserver.py app.yaml
spits out:

Under dev_appserver, runtime:python is not supported for Flexible environment.


The problem can be reproduced with Google's Hello World application that uses the flexible environment as well.

So locally we can't use Python3? How can we then run my Python3 code locally before uploading it?

Answer Source

Using the Local Development Server is applicable to the standard environment apps only.

For running locally flexible env apps see Running locally:

You run your application locally with the native development tools that you usually use.

For example, you can usually run a Flask application with Flask's development server using:

python main.py

Django applications can be started using:

python manage.py runserver

Related: How to tell if a Google App Engine documentation page applies to the standard or the flexible environment