Google App Engine 支持 Python 3 吗?

50 投票
7 回答
20366 浏览
提问于 2025-04-18 09:50

我开始学习Python 3.4,想要开始使用一些库和Google App Engine,但是大部分Python库只支持Python 2.7,Google App Engine也是这样。

我应该学习2.7吗?还是有更简单的方法?(我可以在我的电脑上同时安装两个版本的Python吗?)

7 个回答

1

(2021年6月): 到现在为止已经超过7年了,这里很多回答要么不正确,要么部分正确。写这段话的时候,Python 3已经被所有的App Engine产品完全支持。以下是支持的版本、文档链接和发布公告:

  1. App Engine - 标准版 (2018年8月): 支持Python 2.73.7, 3.8, 3.9
  2. App Engine - 灵活版 (2016年8月测试版, 2017年3月正式版): Python 3.7(.2)

自从原问题发布以来,还有一个变化就是Google Cloud推出了另外两个无服务器计算平台,它们和App Engine一起,都支持Python 3:

  1. Cloud Functions (2017年3月测试版, 2018年8月正式版): 支持与App Engine - 标准版相同的版本
  2. Cloud Run (2019年4月测试版, 2019年11月正式版): 支持任何可以放进容器的版本
1

没错!Google App Engine支持Python 3,你需要设置灵活环境。

我有机会在App Engine上部署我的应用程序,它使用的是Python 3.6的运行环境,运行得非常顺利... :)

8

是的。从2018年8月8日起,Python 3.7可以在Google App Engine的标准运行环境中使用。你可以在这个链接里找到更多信息。

28

自2016年8月10日起,支持了。

如果你正在使用Google App Engine的测试环境,你可以编辑你的应用程序的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
34

不,这个不行。

[编辑说明:截至2018年8月,这个回答已经过时;请查看评论和其他回答]

Google App Engine (GAE)Python 应用程序提供了一个沙盒环境的 Python 2.7 运行时。这是正常的App Engine托管方式。不过,在 GAE 中,你可以使用托管虚拟机托管

托管虚拟机托管允许你在可配置的Google计算引擎虚拟机上运行 GAE 应用程序,这样你就有了更多的灵活性。目前,托管虚拟机还处于Alpha阶段,只支持 Java 7Python 2.7Go 1.4 运行环境。如果你想使用其他运行环境(比如 Python 3node.js),你可以创建用户自定义的运行环境

注意:使用托管虚拟机时,你将无法使用 Python 2.7GAE库。

  • 如果你坚持使用GAE,因为 Python 3+ 不可行,我建议你先学习 2.7,等GAE库支持 Python 3+ 后再切换到 3+ 版本。如果你学会了其中一个版本,切换到另一个版本会很简单。

  • 如果你坚持使用 Python 3+,你可以使用HerokuMicrosoft Azure。这两个平台都支持 Python 2.73.4

撰写回答