python中字符串编码方式小结

         Python2中字符串的类型有两种:str和unicode,其中unicode是统一编码方式,它使得字符跟二进制是一一对应的,因此所有其他编码的encode都从unicode开始,而其他编码方式按照相应的编码decode之后也会变成unicode。而utf-8,gbk编码的字符都是str。

         从一个界面直接输入的字符串,其默认编码为系统的默认编码方式:

>>> import sys
>>> print sys.getdefaultencoding()
ascii

如在windows下是ascii。

那么将其转化为unicode:

>>> s =’匆匆’
>>> s
'\xb4\xd2\xb4\xd2'
>>>
>>> s1=s.decode("gbk")
>>>
>>> s1
u'\u5306\u5306'

之后将其编码为utf8:

>>> S2=s1.encode("utf8")
>>>
>>> S2
'\xe5\x8c\x86\xe5\x8c\x86'

当python头文件中包含了语句:

#-*- coding:utf-8 -*-

代码中输入的文字默认为utf8编码。

其他参考:http://www.cnblogs.com/schut/p/8407258.html

猜你喜欢

转载自www.cnblogs.com/zichun-zeng/p/10216948.html