|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
Traceback (most recent call last):
File "F:/python作业/034/with.py", line 15, in <module>
differ = file_compare(file1,file2)
File "F:/python作业/034/with.py", line 6, in file_compare
each_line2 = f2.readline()
UnicodeDecodeError: 'gbk' codec can't decode byte 0xbc in position 8: illegal multibyte sequence
>>>
====================== RESTART: F:/python作业/034/with.py ======================
请输入需要比较的头一个文件名:E:\A\1.txt
请输入输入需要比较的另一个文件名:E:\A\record.txt
Traceback (most recent call last):
File "F:/python作业/034/with.py", line 15, in <module>
differ = file_compare(file1,file2)
File "F:/python作业/034/with.py", line 6, in file_compare
each_line2 = f2.readline()
File "D:\python3.7.3\lib\codecs.py", line 322, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbf in position 2: invalid start byte
>>>
你的文本文件编码不一定是GBK编码和UTF-8编码,可以用记事本打开,另存为,选UTF8编码保存,你的代码再指定用UTF8打开文件。
或者用判断文件编码的模块来判断,再用正确编码打开:
- import chardet
- with open('xxx', 'rb') as f:
- m = f.read()
- ec = chardet.detect(m)
- with open('xxx', 'rt', encoding=ec['encoding']) as f:
- r = f.read()
- print(r)
复制代码
|
|