我正在尝试构建一种方法来导入多种类型的 csv 或 Excel 并将其标准化。一切都运行顺利,直到某个 csv 出现,这给我带来了这个错误:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xcd in position 133: invalid continuation byte
我正在构建一组尝试/例外以包括数据类型的变体,但对于这个我无法弄清楚如何防止。
if csv_or_excel_path[-3:]=='csv':
try: table=pd.read_csv(csv_or_excel_path)
except:
try: table=pd.read_csv(csv_or_excel_path,sep=';')
except:
try:table=pd.read_csv(csv_or_excel_path,sep='\t')
except:
try: table=pd.read_csv(csv_or_excel_path,encoding='utf-8')
except:
try: table=pd.read_csv(csv_or_excel_path,encoding='utf-8',sep=';')
except: table=pd.read_csv(csv_or_excel_path,encoding='utf-8',sep='\t')
顺便说一下,文件的分隔符是“;”。
所以:
a) 我知道如果我能确定“位置 133”中的字符是什么,那么追查问题会更容易,但我不知道如何找出来。有什么建议么?
b)有没有人建议在该尝试/除外序列中包含什么以跳过此问题?