Как только я столкнулся с той же проблемой и решил ее, как показано ниже:
with open("file.csv", "rb", encoding="utf-8) as fh:
точные детали:
r = read mode
b = mode specifier in the open() states that the file shall be treated as binary,
so contents will remain a bytes. No decoding attempt will happen this way.
Как мы знаем, Python пытается преобразовать байтовый массив (байты)который предполагается, что это строка в кодировке utf-8) в строку Unicode (str).Этот процесс, конечно, является декодированием в соответствии с правилами utf-8.Когда он пытается это сделать, он встречает последовательность байтов, которая не разрешена в строках с кодировкой utf-8 (а именно, это 0xff в позиции 0).