python解决文本乱码问题及文本二进制读取后的处理
2016-01-03 01:54
453 查看
当文本中含有很多各种各样的字符时,此时读取文件如果还用
的r模式,遇到ascii码表识别不了的会报错,如:UnicodeEncodeError: ‘gbk’ codec can’t encode character
此时可以用二进制读取文件换成
二进制一般都可以顺利的读取,
读取后
是二进制制类型的b’。。。’的,无法对此解析,
所以可用decode( )函数来解码,
或者,gb18030,utf-8,这时就可以解析了
2. 如果这时,不论是,gbk还是gb18030都解析不了的时候,
还是会报错UnicodeEncodeError: ‘gbk’ codec can’t encode character ,
而这时候字符对文本分析可能又没有什么用的时候,我们可以忽略该字符,
可用
或者’ignore’换成’replace’
便可以将文本转化成字符串了。
fr1 = open("filename","r")
的r模式,遇到ascii码表识别不了的会报错,如:UnicodeEncodeError: ‘gbk’ codec can’t encode character
此时可以用二进制读取文件换成
fr1 = open("filename","rb")
二进制一般都可以顺利的读取,
读取后
r1 = fr1.readline()
是二进制制类型的b’。。。’的,无法对此解析,
所以可用decode( )函数来解码,
r1_to_str = r1.decode('gbk')
或者,gb18030,utf-8,这时就可以解析了
2. 如果这时,不论是,gbk还是gb18030都解析不了的时候,
还是会报错UnicodeEncodeError: ‘gbk’ codec can’t encode character ,
而这时候字符对文本分析可能又没有什么用的时候,我们可以忽略该字符,
可用
r1_to_str = r1.decode('gbk','ignore')
或者’ignore’换成’replace’
便可以将文本转化成字符串了。
相关文章推荐
- 手把手教你用python抓网页数据
- Python List Operation
- 【Error】Python:SyntaxError: Non-ASCII character '\xe5'解决方法
- Python实现简单的文件传输与MySQL备份的脚本分享
- python-70:使用BS4获取正文内容
- python 利用模板文件生成配置文件
- Python制作和使用egg
- Python:冒泡排序
- Python sort and sorted
- 《笨办法学Python》 第3课手记
- Python-3------新年考试周的Python学习
- leetcode之Insert Interval
- Python教程:numpy的基本介绍
- 《笨办法学Python》 第2课手记
- Python的队列
- Python 2.5.1 切片
- python之Merge Intervals
- Python标准库14 数据库 (sqlite3)
- python 代码片段4
- 2016/1/2 Python中的多线程(1):线程初探