Python的编码问题
程序员文章站
2022-03-02 13:25:00
...
刚才自己编程的时候遇到了一个困惑,我们之前知道了如何将Unicode类型的字符encode成为电脑能够保存的字节流。那么怎么将字节流转化为Unicode的格式呢?
这是我们就要知道保存文件时选择的编码方式是什么?如utf-8还是GB2312等。
下面还是代码来说明问题:
import chardet
f1 = open('test5.txt','r')
encoding = f1.read()
print encoding
print type(encoding)
str_unicode = encoding.decode('gb2312')
#这一步的encoding.decode('gb2312')中的‘gb2312’至关重要
#一开始我用的是‘utf-8’来解码,shell提示无法识别其中的中文byte
#当然我将txt中的中文删掉,程序就能正常的运转了,可见TXT和程序还是蛮智能的
#后来我转念一想有中文啊,utf-8来解码又不可以,因此我用了‘gb2312’
#哎~这把终于成功了,自己又进一步了解了解码成为Unicode类型
print str_unicode
print type(str_unicode)
上面的注释已经相当的详细了,对此不再赘述。