猿问

python新手编码问题,急,在线等

如下的代码,我想输出中文,但是不成功,求指导
#coding=utf-8
text='音乐-演唱会'
tt=text.split('-')
printtt
输出的结果是
['\xe9\x9f\xb3\xe4\xb9\x90','\xe6\xbc\x94\xe5\x94\xb1\xe4\xbc\x9a']
但我想要的结果是['音乐','演唱会']
—————————————————————————————————————————
于是我这样写
text=u'音乐-演唱会'
text=text.decode('utf-8').encode('utf-8')
tt=text.split('-')
printtt
还是输出
['\xe9\x9f\xb3\xe4\xb9\x90','\xe6\xbc\x94\xe5\x94\xb1\xe4\xbc\x9a']
请问这个问题怎么解决?怎么会出现这样的情况。要怎么样才能输出中文
墨色风雨
浏览 394回答 2
2回答

湖上湖

看下sys.stdout.encoding的编码是不是utf-8,确保编码一致。#coding=utf-8importsysprintsys.stdout.encodingtext='音乐-演唱会'tt=text.split('-')printtt#这里隐性调用list类型的__str__方法。print"[%s]"%','.join(['"%s"'%xforxintt])#["音乐","演唱会"]#或者使用json模块importjsonprintjson.dumps(tt,ensure_ascii=False)#["音乐","演唱会"]
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答