实例1

v1=u '好神奇的问题!?'

type(v1)-》unicode

 

v1.decode("utf-8")# not work,because v1 is unicode already

v1.encode("gb2312")#work,convert from unicode into gbk2312

 

【发现】

decode是把指定的对象转化为unicode(unicode包含utf-8,utf-16),并且指明了待转化对象的编码方式。

encode是把把unicode对象转化为其他编码的过程。

 

 

实例2:

v1=r'C:\abc\1.txt' 

v2=r'好神奇的问题'

v3=r'C:\abc\12dc\文本.txt'

v4=r'\\rdf\azzwang\maya2013 project\imageshahah\鏉愯川璐村浘.jpg'

    .decode("utf-8")   .decode("gb2312")
v1   √   √
v2   ×   √
v3   ×   √
v4   √   ×

 

【发现】

    对于一个str类型的字符串,如果你想着都用utf-8来解码是完全不行的。因此,我们期望一个程序的某个方法返回特定的编码(如unicode),在这种情况下,我们就可以直接使用encode方法转化为我们想要的编码,而省去了解码这个难题。

 

posted on 2015-12-29 21:35  AzzStyle  阅读(276)  评论(0编辑  收藏  举报