Я хочу прочитать файл csv и обработать некоторые столбцы, но я продолжаю получать проблемы. Застрял со следующей ошибкой:'utf-8' codec не может декодировать байт 0x89
Traceback (most recent call last):
File "C:\Users\Sven\Desktop\Python\read csv.py", line 5, in <module>
for row in reader:
File "C:\Python34\lib\codecs.py", line 313, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x89 in position 446: invalid start byte
>>>
Мой код
import csv
with open("c:\\Users\\Sven\\Desktop\\relaties 24112014.csv",newline='', encoding="utf8") as f:
reader = csv.reader(f,delimiter=';',quotechar='|')
#print(sum(1 for row in reader))
for row in reader:
print(row)
if row:
value = row[6]
value = value.replace('(', '')
value = value.replace(')', '')
value = value.replace(' ', '')
value = value.replace('.', '')
value = value.replace('0032', '0')
if len(value) > 0:
print(value + ' Length: ' + str(len(value)))
Я новичок в Python, пытался прибегая к помощи, но трудно найти правильное решение.
Может ли кто-нибудь помочь мне?
вы можете использовать файл CSV файла или его часть? – user1767754
Вы уверены, что ваш файл * действительно * закодирован с помощью UTF-8? Попробуйте '' cp1252'', если файл поступает из Excel в западной стране. Все поддерживаемые кодировки: https://docs.python.org/2/library/codecs.html#standard-encodings –
Почему вы открываете файл как UTF-8? Вы уверены, что это правильный кодек для этого файла? –