python2 中列表中unicode转换为输出中文

在python2脚本或命令行中,可以很容易将一个unicode字符串输出显示为中文。如

>>> a="德国少儿百科全书珍藏版:全辑".decode('utf-8')

>>> a

u'\u5fb7\u56fd\u5c11\u513f\u767e\u79d1\u5168\u4e66\u73cd\u85cf\u7248\uff1a\u5168\u8f91'

>>>

>>>

>>> print a

德国少儿百科全书珍藏版:全辑

但如果将a放入一个列表中,如

>>> print [a]

[u'\u5fb7\u56fd\u5c11\u513f\u767e\u79d1\u5168\u4e66\u73cd\u85cf\u7248\uff1a\u5168\u8f91']

>>>

这是为什么呢?[a]不是一个字符串,将原样输出。

我们可以将列表先转换为字符串。

>>> print str([a]).decode("unicode-escape")

[u'德国少儿百科全书珍藏版:全辑']

>>>

但此时,经过decode后,其类型变为unicode

>>> type(str([a]).decode("unicode-escape"))

<type 'unicode'>

>>>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。