在linux centos系统中使用python2.7.2对一个字符串解码然后输出,代码如下:
s = "哈哈哈"
print s.decode('utf-8')
结果报了如下的错误:
然后在代码前使用了:
sys.setdefaultencoding('utf-8')
这个编码设置,运行依然报如上错误。
从输出看,解码是没问题的,反而是编码出了问题,应该是当前环境下print时候编码出的问题
于是,将代码改为:
print (s.decode('utf-8')).encode('gb2312')
结果没问题了。
所以在使用 print 的时候,要注意环境所需的编码。