赞
踩
在用python读txt文件的时候遇到了编码问题:‘utf-8’ codec can’t decode byte 0xb70,同样的代码之前在python2的时候是不会出现问题的。用百度找了一下也没能找到有效的解决方法,后来在stackoverflow上找到了类似的问题。
stackoverflow问题
str = unicode(str, errors='replace')
or
str = unicode(str, errors='ignore')
这个操作会删除(忽略)有问题的字符,并返回不包含这些字符的字符串。
使用codecs模块中的open方法读取文件:
import codecs
with codecs.open(file_name, 'r', encoding='utf-8',
errors='ignore') as fdata:
有人提到,要使python3处理文件与和python2尽可能相似,可以使用:
with open(filename, encoding="latin-1") as datafile:
# work on datafile here
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。