Python列表中包含中文时输出十六进制转中文的小方法
现象:列表中的中文打印出来后显示为十六进制1
2
3
4
>>> lt=['大神','zhzhgo']
>>> print lt
['\xb4\xf3\xc9\xf1', 'zhzhgo']
>>>
首先需要明确,这不是乱码,这是 unicode 字符串在内存中的形式,python 在命令行界面输出的数据,如果不是ASCII码,则会以十六进制形式输出。
如何使打印出来的结果显示为中文呢?解决办法如下:
1
2
3
4
5
6
7
8
#-*-coding:utf-8-*-
lt=["大神",'zhzhgo']
str=','.join(lt) #将列表转换为字符串
print str
print type(str)
lt=list(str)
print lt
print type(lt)
打印结果如下:
大神,zhzhgo
<type 'str'>
['\xe5', '\xa4', '\xa7', '\xe7', '\xa5', '\x9e', ',', 'z', 'h', 'z', 'h', 'g', 'o']
<type 'list'>
页:
[1]