Мне часто приходится сталкиваться, когда я пытаюсь манипулировать данными, например, «UnicodeDecodeError: кодек« gbk »не может декодировать байт 0x91 в позиции 2196: недопустимая многобайтовая последовательность».
Я нашел способ обойти эту ошибку, но мое любопытство заставляет меня исследовать, что находится в положении 2196.
Здесь возникает вопрос :
Как понятьномер 2196?Я имею в виду, какую кодировку использовать при подсчете от 1,2, ..., 2196.UTF-8?GBK?двоичная?hex или что-то еще?И как я могу увидеть число в этой позиции, не выбрасывая ошибку?
Вот пример кода:
with open(r"G:\ETCData\6aMTC\2019-06-01.txt", "r") as fp:
for i, line in enumerate(fp):
if i == 6:
pass
UnicodeDecodeError Traceback (most recent call last)
<ipython-input-2-6810d8c84b34> in <module>()
1 with open(r"G:\ETCData\6aMTC\2019-06-01.txt", "r") as fp:
----> 2 for i, line in enumerate(fp):
3 if i == 6:
4 pass
UnicodeDecodeError: 'gbk' codec can't decode byte 0x91 in position 2196: illegal multibyte sequence