2011-08-17 28 views
1

我希望你的帮助与一个希望琐碎的问题。最近我开始学习Python,以便与Google App Engine环境一起工作。不用说,我从最简单的Hello World应用程序开始。它谷歌应用程序引擎与Python的utf-8编码问题

英文版作品就好

然而,当我试图用我的母语迹象工作,那么这个问题开始。基本上在本地机器上运行时,它不能正确显示字母。

下面是一段代码,这是造成我发出

# -*- coding: utf-8 -*- 
import datetime 

print 'Content-Type: text/html' 
print '' 
print '<html>' 
print '<head>' 
print '<title>Witaj świecie</title>' 
print '</head>' 
print '<body>' 
print '<h1>Witaj świecie</h1>' 
print '' 
print 'Data logowania to: %s' % (datetime.datetime.now()) 
print '</body>' 
print '</html>' 

当然我保存为UTF-8格式的所有文件。任何人都可以告诉我如何在这里启用适当的utf-8字符显示?

回答

2

,当你设置的内容类型将编码设置:

print 'Content-Type: text/html; charset=UTF-8' 

为@bpgergo建议不要使用meta标签;它特定于HTML,并简单地覆盖头文件。由于您已经设置了标题,因此只需将它们正确地放在首位即可轻松简单。

你真的不应该使用CGI并使用打印语句输出你的内容 - 这很麻烦,而且随着你的应用程序变得更大,这将是一个真正的痛苦,并且使国际化等事情变得更加困难。相反,使用WSGI和模板 - 请参阅App Engine入门指南,具体为thisthis

3
print '<html>' 
print '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">' 
print '<head>' 
+0

谢谢你的帮助!现在我觉得超级愚蠢。为什么我没有想到这些显而易见的事情...... – Mathias