Найти - Пользователи
Полная версия: Кодировки Python.
Начало » Python для новичков » Кодировки Python.
1 2
Resperator
НЕАКТУАЛЬНО!

Суть вот в чем. По ходу выполнения происходит считывание большого количества строк с .txt
В файле (.txt) текст в UTF-8
В Python'е кодировка по умолчанию cp1251
Как только дело доходит до строк со специфичными символами - все ломается. Как по умолчанию использовать UTF-8 в Python, либо еще что-то в этом роде.

Собс-на сам лог:

File “D:\Python\lib\encodings\cp1251.py”, line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)
UnicodeDecodeError: ‘charmap’ codec can't decode byte 0x98 in position 256: character maps to <undefined>

Пример такого .txt ниже.
Код простейший.

f=open('111.txt','r')
for line in f:
z=line
z=z*2
print(z)
JOHN_16
python3
 open(..., encoding='utf8')
Resperator
JOHN_16
python3
В этом то и суть. Сие команда не помогает.

Traceback (most recent call last):
File “C:\Users\****\Desktop\****.py”, line 157, in <module>
for line in f:
File “D:\Python\lib\encodings\cp1251.py”, line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)
UnicodeDecodeError: ‘charmap’ codec can't decode byte 0x98 in position 256: character maps to <undefined>
ZerG
 with open('111.txt', "rt", encoding="utf-8") as f:
    z = f.read()
    for i in z:
        print(i)

Прекрасно работает!


 
 

 

 

 

 

Resperator
ZerG
with open('111.txt', “rt”, encoding=“utf-8”) as f:
z = f.read()
for i in z:
print(i)
Таки да. Пропишите пожалуйста еще тот случай, где считывание происходит не по символу, а по строке.
Resperator
ZerG
Переписал сам. Вроде правильно. Позже отпишу.

with open('splitfiles_5.txt', “rt”, encoding=“utf-8”) as f:
for line in f:
print(line)
Resperator
ZerG
Нашел новую проблему. При записи Питон создает .txt в кодировке ANSI. Как создать с помощью него txt именно в UTF-8 для дальнейшей записи.
Resperator
Ибо при записи определенных символов происходит краш. Скажем такого �
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB