Python的编码问题

刚才自己编程的时候遇到了一个困惑,我们之前知道了如何将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)


上面的注释已经相当的详细了,对此不再赘述。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值