我在使用 Python 2.5 的谷歌应用引擎上。我的应用程序必须处理多语言,所以我必须处理 utf-8。
我做了很多谷歌,但没有得到我想要的。
1.有什么用# -*- coding: utf-8 -*-
?
2.有什么区别
s=u'Witaj świecie'
s='Witaj świecie'
'Witaj świecie' 是一个 utf-8 字符串。
3.当我将.py文件保存到'utf-8'时,我还需要u
在每个字符串之前吗?
我在使用 Python 2.5 的谷歌应用引擎上。我的应用程序必须处理多语言,所以我必须处理 utf-8。
我做了很多谷歌,但没有得到我想要的。
1.有什么用# -*- coding: utf-8 -*-
?
2.有什么区别
s=u'Witaj świecie'
s='Witaj świecie'
'Witaj świecie' 是一个 utf-8 字符串。
3.当我将.py文件保存到'utf-8'时,我还需要u
在每个字符串之前吗?
u'blah'
把它变成另一种字符串( typeunicode
而不是 type str
) - 它使它成为一个 unicode 代码点序列。没有它,它就是一个字节序列。只有字节可以写入磁盘或网络流,但您通常希望使用 Unicode(尽管 Python 和一些库会为您进行一些转换) - 编码(utf-8)是之间的转换这些。所以,是的,你应该u
在你所有的文字前面使用,它会让你的生活更轻松。请参阅Programatic Unicode以获得更好的解释。
编码行告诉 Python 你的文件采用什么编码,以便 Python 可以理解它。同样,从磁盘读取会给出字节 - 但 Python 想要查看字符。在 Py2 中,代码的默认编码是 ASCII,因此编码行允许您首先将内容ś
直接放在 .py 文件中 - 除此之外,它不会改变代码的工作方式。