@ilyakmet

Как исправить ошибку кодировки при чтении cvs файла?

Хочу прочесть файл циклом в python 3:

f = open(name, 'r')

for i in f:
  print(i)


Имеем:
UnicodeDecodeError: 'ascii' codec can't decode byte 0x8f in position 36: ordinal not in range(128)

Как то через codecs это решается?
Читал много статей про юникод, но ничего не помогает. Никто не может дать адекватный и простой ответ на вопрос.
  • Вопрос задан
  • 520 просмотров
Пригласить эксперта
Ответы на вопрос 2
sim3x
@sim3x
https://docs.python.org/3.1/library/csv.html
import csv
with open('some.csv', newline='', encoding='utf-8') as f:
    reader = csv.reader(f)
    for row in reader:
        print(row)
Ответ написан
dimonchik2013
@dimonchik2013
non progredi est regredi
body = body.decode('utf8', 'ignore')

если не помогает - вырезай левые символы

можешь попробовать угадать кодировку вместо utf8
https://pypi.python.org/pypi/chardet
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 03:54
1500 руб./за проект
22 нояб. 2024, в 02:56
10000 руб./за проект
22 нояб. 2024, в 00:55
500 руб./за проект