Python 如何在Google App Engine上导入文本文件?

Python 如何在Google App Engine上导入文本文件?,python,google-app-engine,text,google-cloud-platform,Python,Google App Engine,Text,Google Cloud Platform,我可以在本地机器上使用下面的行加载我的txt文件 lines = open('movie_lines.txt', encoding = 'utf-8', errors = 'ignore').read().split('\n') 但这种方法在gcloud上是错误的 数据文件的屏幕截图。 如何在gcloud上打开此txt文件 错误: TypeError:“encoding”是此函数的无效关键字参数 我正在使用google App Engine进行此操作。您会收到错误,因为在运行Python 3.

我可以在本地机器上使用下面的行加载我的txt文件

lines = open('movie_lines.txt', encoding = 'utf-8', errors = 'ignore').read().split('\n')
但这种方法在gcloud上是错误的

数据文件的屏幕截图。 如何在gcloud上打开此txt文件

错误: TypeError:“encoding”是此函数的无效关键字参数


我正在使用google App Engine进行此操作。

您会收到错误,因为在运行Python 3.x时,App Engine的默认运行时环境是Python 2.7。Python2.7没有在
open
函数中指定编码的选项,因此关键字错误无效

查看如何在Python2.7上打开文件

要使用Python 3运行时,请将以下内容放入
app.yaml

runtime: python37

更多关于这一点,您将在中找到。Python3.x现在可以在标准和灵活的环境中使用。关于差异,您可以阅读。

要运行python3.x版本,还有一种方法涉及在开始运行时直接在参数中指定

gcloud ml-engine jobs submit training $JOB_NAME \
--job-dir $OUTPUT_PATH \
--runtime-version 1.12 \
--python-version 3.5 \
--module-name trainer.bot \
--package-path ./trainer \
--region $REGION \
-- \
--train-file $TRAIN_DATA

可以使用python version参数指定python版本

您能分享收到的错误消息吗?另外,您在什么环境下打开文件?(即,Cloud Shell/App Engine应用程序/Compute VM实例…@Joan我正在使用App Engine,我更新了这个问题,但出现了错误?你能给出使用Python 3运行时的代码吗?“我试着去理解,但我没有理解。”玛丽森说。如果您需要进一步澄清,请告诉我。@Marison请注意,在编辑中您提出了一个新问题。我们都很乐意帮助你,但建议我们分开处理。这是一个需要调试的新问题。我建议如下:(1)接受这一条作为答案(2)将你的编辑问题移至新的帖子。谢谢你的建议。我提出了一个新问题。如果可能的话,请帮我做这个。