有没有办法使用gcloud与python3?

时间:2016-06-30 03:02:04

标签: python google-app-engine google-cloud-platform gcloud

我对gcloud与python3有点困惑

我在python3 env中安装了gcloud之后我尝试了示例Quickstart for Python in the App Engine Flexible Environment

它说'你需要Google Cloud SDK',所以我安装了SDK。 SDK(包括SDK)之后的所有过程,都需要python2 env。

这是一个问题,是不可能用python3(官方)运行gcloud呢? (SDK和python2与gcloud库是最好的方法吗?)

5 个答案:

答案 0 :(得分:14)

我通过指定Python 2的路径(我在系统上命名为$ export CLOUDSDK_PYTHON=$(which python2) $ ./install.sh )解决了这个问题。

.bashrc

我建议将导出添加到您的.zshrc<select name="anythingYouWant">文件。

答案 1 :(得分:7)

gcloud-pythongcloud-cli as in Cloud SDK是一些不相关的产品。确实你需要python 2.7.x来运行gcloud-cli,但这并不妨碍你使用python3和gcloud-python库。

如果你安装python 2.7x和3.5的多个版本(你甚至可以使python3默认)只要你设置CLOUDSDK_PYTHON环境变量指向python 2.7.x解释器你应该能够运行gcloud-cli而将python3用于您的项目。

在Windows上,例如,Cloud SDK打包自己的python,它不会与您系统上的任何其他版本冲突。它是gcloud-cli的纯运行时依赖。

答案 2 :(得分:1)

从2019年12月17日开始,版本 274.0.0 正式支持Python 3。Release notes

  

Cloud SDK现在已支持Python 3的GA。请运行gcloud topic startup用于以下用途:

     
      
  • 有关配置Cloud SDK使用的Python解释器的信息。
  •   
  • Cloud SDK中仍需要Python 2.7解释器的工具列表。
  •   
  • Python 3支持的已知问题列表。
  •   

(该命令显示dev_appserverendpointscfg是例外。)

根据搜索顺序,gcloud如果找到它,仍将使用Python 2。您可以通过将CLOUDSDK_PYTHON=python3(或类似名称)设置为环境变量来明确显示。

答案 3 :(得分:0)

系统要求明确表示python 2.7.x confusing github tickets

为什么你想用python3运行gcloud?

答案 4 :(得分:0)

smtplib内,它说支持python3,但没有优先级,因为我认为python 2更普及了。这意味着如果您正在运行macOS,则通过install.sh添加一行环境变量将允许gcloud使用python3所在的位置。

如果它不起作用,则将其指向任何python 2,并且仅将python 3用于自己的工作即可解决此问题。

echo "export CLOUDSDK_PYTHON=/your/path/to/python3" >> ~/.bash_profile