App Engine在部署时提供数字格式错误

时间:2011-02-10 19:38:47

标签: python google-app-engine encoding

我刚刚部署了我的应用程序,一旦进入主页,我就会收到“500内部服务器错误”页面。查看日志后,我收到以下错误:

  

在第465行输入'exceptions.SyntaxError'>:文件/base/data/home/apps/spare-wheels/1.348259065130939449/sparewheels.py中的非ASCII字符'\ xc2',但未声明编码;有关详细信息,请参阅http://www.python.org/peps/pep-0263.html(sparewheels.py,第465行)

有问题的行看起来像这样:

self.template_values['price_pounds'] = "£%.2f" % (float(self.event.price_pence)/100)

在localhost上运行时运行正常:Google Apps版本的Python不支持数字格式吗?

2 个答案:

答案 0 :(得分:5)

检查python文件的编码,是UTF-8吗?该错误消息表明您可能已将文件保存为ASCII格式,文件中包含国际字符(也称为“£”),导致Google的python运行时将错误调整为500。

还尝试在python文件的第一行或第二行上抛出这一行:

# coding=utf-8

答案 1 :(得分:1)

如果您不想像@Shakakai所建议那样使用文件编码,这是您在源代码中处理的唯一非ASCII字符,您也可以将该字符替换为等效的HTML实体{{ 1}},将正确呈现。