假设Python将名称视为普通字符串,则首先必须将其解码为unicode:
>>> name
'Christensen Sk\xf6ld'
>>> unicode(name, 'latin-1')
u'Christensen Sk\xf6ld'
实现此目的的另一种方法:
>>> name.decode('latin-1')
u'Christensen Sk\xf6ld'
注意字符串前面的“ u”,表示它是未编码的。如果进行打印,则正确显示带重音的字母:
>>> print name.decode('latin-1')
Christensen Sköld
顺便说一句:必要时,您可以使用de“ encode”方法将unicode转换为UTF-8字符串:
>>> name.decode('latin-1').encode('utf-8')
'Christensen Sk\xc3\xb6ld'