Does Google App Engine support Python 3?

Since August 10, 2016, it does.

If you are using Google App Engine beta environment, you can edit your application app.yaml and specify the required Python version:

runtime: python
# vm: true has been deprecated
# check how env:flex may affect your billing
env: flex
entrypoint: gunicorn -b :$PORT main:app

runtime_config:
    python_version: 3

No, It doesn't.

[Editor's note: As of Aug, 2018, this answer is outdated; see comments and other answers]

Google App Engine (GAE) uses sandboxed Python 2.7 runtime for Python applications. That is the normal App Engine Hosting. However, in GAE you can use Managed VM Hosting.

The Managed VM Hosting lets you run GAE applications on configurable Google Compute Engine Virtual Machines. Giving you more flexibility. Managed VMs at the moment ,at Alpha phase, only support Java 7, Python 2.7 and Go 1.4 runtime environments. To get other runtimes (like Python 3 or node.js) you can create user-configurable custom runtime.

Note: With Managed VMs you won't have the capabilities of Python 2.7 GAE libraries.

  • If you insist on using GAE, since Python 3+ is not viable, I would suggest learning 2.7 and switching to 3+ versions when GAE libraries gets ported to Python 3+. You can easily switch to the other if you learn one of the versions.

  • If you insist on using Python 3+, you can use Heroku or Microsoft Azure. Both of them supports Python 2.7 and 3.4.