我的开发环境是:eclipse + pydev。
如果我使用raw_input()获取角色,我输入“你好世界”,然后我得到“浣ソ涓涓栫晫”。那么我怎样才能得到“你好世界”并正确打印出来。
我尝试过raw_input()。decode(sys.stdin.encoding),但结果是一样的。
答案 0 :(得分:3)
使用终端/控制台的代码页解码。
import sys
t = raw_input().decode(sys.stdin.encoding)
print t
答案 1 :(得分:0)
检查您正在使用的编码。根据{{3}},我去尝试gbk
编码。具体来说,这是我的python 2.7.3解释器,通过ibus
进行UTF-8编码输入:
>>> print raw_input().decode('gbk')
你好世界
浣犲ソ涓栫晫
>>> print raw_input().decode('utf-8')
你好世界
你好世界
这是尝试将UTF-8编码的字符串解码为gbk
的结果。由于您的输入似乎是某种形式的UTF,为什么不强制执行utf-8解码或使用输入的编码对其进行解码,如@imom0's comment?
import sys
print myString.decode(sys.stdin.encoding)