转:Python utf-8和gbk转换


刚开始接触python对于它的编码转换不是很熟悉,今天遇到这个问题,使用下面的方法解决了。记录一下

文件声明为utf-8编码保存的源文件,但是中文windows的本地默认编码是cp936(gbk编码),Windows中直接打印utf-8的字符串是乱码。

解决方法:

在控制台打印的地方用一个转码就可以

print str.decode('UTF-8').encode('GBK')

比较通用的方法应该是:

import sys
type = sys.getfilesystemencoding()
print str.decode('UTF-8').encode(type)

http://hi.baidu.com/dushm/item/29c7bc9475f357ba82d2952f

Archives