import subprocess
import os
def execute():
code = "def Solution():\n\tprint('Hello')\n\nSolution()\n"
f = open('\tmp\Solution.py','w')
f.write(code+'\n')
f.close()
s = subprocess.check_output("python \tmp\Solution.py", shell = True)
return s
我正在从云函数处理程序中调用execute函数。这在本地有效,但在gcloud subprocess.check_output返回时返回非零退出代码。
是因为gcloud运行时环境找不到python解释器?无论哪种情况,我该怎么做?我在这里想念什么?我的日志中没有太多信息,因此被卡住了。
谢谢
您必须希望将函数部署到包含Python运行时的容器中。您不能假定您的云功能也包含外壳程序。因此,不建议在python代码中使用subprocess
。