Google App Engine是否支持Python 3?

我开始学习Python 3.4,并希望开始使用库以及Google App Engine ,但大多数Python库仅支持Python 2.7 ,与Google App Engine相同。

我应该学习2.7还是有一个更简单的方法? (我的机器上可能同时有两个Python版本吗?)

不,它没有。

Google App Engine (GAE)Python应用程序使用沙盒Python 2.7运行时。 这是正常的App Engine Hosting 。 但是,在GAE您可以使用托pipe虚拟机托pipe

Managed VM Hosting可让您在可configuration的Google Compute Engine虚拟机上运行GAE应用程序。 给你更多的灵活性。 目前,在Alpha阶段, 托pipe虚拟机仅支持Java 7Python 2.7Go 1.4运行时环境。 要获得其他运行时(如Python 3node.js ),您可以创build用户可configuration的自定义运行时 。

注意:对于托pipe虚拟机,您将不具备Python 2.7 GAE库的function。

  • 如果你坚持使用GAE ,因为Python 3+是不可行的,所以当build议将GAE库移植到Python 3+时,我build议学习2.7并切换到3+版本。 如果您了解其中一个版本,则可以轻松切换到另一个版本。

  • 如果你坚持使用Python 3+ ,你可以使用HerokuMicrosoft Azure 。 它们都支持Python 2.73.4

自2016年8月10日起,

如果您使用Google App Enginetesting版环境,则可以编辑应用程序app.yaml并指定所需的Python版本:

 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 

是! Google App引擎支持python v3,您需要设置灵活的环境。

我有机会在应用程序引擎上部署我的应用程序,它使用python 3.6运行时,工作顺利… 🙂

在标准环境中,需要使用vendoring来安装第三方库。 这个任务在灵活的环境中是不需要的,因为运行时会自动安装在requirements.txt中声明的依赖关系,包括需要本地扩展的依赖关系。

https://cloud.google.com/appengine/docs/flexible/python/migrating-an-existing-app#behavioral_differences