Python和UTF-8:那种混乱(Python and UTF-8: kind of confus

2019-09-17 12:40发布

我与Python 2.5的谷歌应用程序引擎。 我的应用程序必须处理MULTILANGUAGES所以我必须处理UTF-8。

我已经做了很多的谷歌,但没有得到我想要的东西。

1.Whats的使用# -*- coding: utf-8 -*-

2.什么是之间的差

s=u'Witaj świecie'
s='Witaj świecie'

“你好世界”是一个UTF-8字符串。

3.当我保存了.py文件的“utf-8”,我还需要在u每串过吗?

Answer 1:

u'blah'把它变成不同种类的字符串(类型unicode而非类型str ) -它使Unicode代码点的序列。 如果没有它,它是一个字节序列。 只有字节可以写入到磁盘或网络流,但一般要在统一的工作(虽然Python和一些图书馆,会做一些对你的转换) - 编码(UTF-8)之间的转换这些。 所以,是的,你应该使用u在所有的文字面前,它会让你的生活变得更轻松。 见程序化的Unicode为一个更好的解释。

编码行告诉Python的文件是什么编码方式,因此Python可以理解。 再次,从磁盘读取的字节给出-但是Python希望看到的字符 。 在的Py2,代码的默认编码是ASCII,则编码线可以让你把东西像ś直接在你的.py文件摆在首位-除此之外,它不会改变你的代码是如何工作的。



文章来源: Python and UTF-8: kind of confusing