赞
踩
Python读取文本时经常出现的可能错误:
UnicodeDecodeError: 'gbk' codec can't decode byte 0xad in position...
python的open方法默认编码取决于平台,如果是windows平台,默认编码是gbk,如果文件是utf8编码,就会报这个错误。
因此上述错误的意思是Python在windows平台默认采用gbk方法打开文件时出现了错误,很可能的原因是文件编码方式不是gbk,这种情况下很可能是utf-8编码(当然也有可能不是,只是utf-8编码很常用)。
因此解决的办法是
with open("input.txt",encoding='utf-8') as f:
for line in f:
print(line)
有时候发现即使文件是utf-8编码,这样改还是报错,很可能的原因是除了编码方式,还有其它格式上的问题,这个时候可以试试把错误忽略掉。
with open("input.txt",encoding='utf-8',errors = 'ignore') as f:
for line in f:
print(line)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。