У меня есть программа Python, которая хранит и записывает данные в файл. Данные представляют собой необработанные двоичные данные, которые хранятся внутри str
. Я пишу его через кодек utf-8. Тем не менее, я получаю UnicodeDecodeError: 'charmap' codec can't decode byte 0x8d in position 25: character maps to <undefined>
в файле cp1252.py
.
Мне кажется, что Python пытается интерпретировать данные с помощью кодовой страницы по умолчанию. Но у него нет кодовой страницы по умолчанию. Вот почему я использую str
, а не unicode
.
Я думаю, мои вопросы:
- Как представить исходные двоичные данные в памяти в Python?
- Когда я пишу необработанные двоичные данные через кодек, как мне его закодировать /unencode?