python乱码解决

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/MakeContral/article/details/83059301

利用chardet.detect 解析字符串的格式先,然后将其转码Unicode,然后再转为utf-8

# coding=utf-8
import sys
import chardet
import codecs
import os
reload(sys)
sys.setdefaultencoding('utf-8')

fileT = codecs.open(r'C:\Users\GEKL\Desktop\SogouC.reduced\Reduced\C000010\1032.txt', 'r')

fencoding=chardet.detect(fileT.read())
print fencoding
# 结果为一个概率类型,{'confidence': 0.96630842899499614, 'encoding': 'GB2312'}  百分之96的可能性为GB2312
# 那么就将字符串现由GB2312变成Unicode,利用decode。再将Unicode变成utf-8.利用encode完成
print fileT.decode('GB2312').encode('utf-8')

猜你喜欢

转载自blog.csdn.net/MakeContral/article/details/83059301