Ошибка! blahfile не закодирован в UTF-8. Сохранение отключено

Итак, я пытаюсь написать файл gzip, на самом деле из сети, но для упрощения я написал очень простой тест.

import gzip
LINES = [b'I am a test line' for _ in range(100_000)]
f = gzip.open('./test.text.gz', 'wb')
for line in LINES:
    f.write(line)
f.close()

Он отлично работает, и я вижу в Jupyter, что он создал файл test.txt.gz в списке каталогов. Поэтому я нажимаю на нее, ожидая появления целого ряда мусорных символов, указывающих на двоичный файл, как вы видите в Блокноте.
Однако вместо этого я получаю это...

Error!  test.text.gz is not UTF-8 encoded.
Saving disabled.
See console for more details

Что заставляет меня думать, боже мой, ошибка кодирования, что-то не так с моей кодировкой, моим сохранением, могу ли я сохранить байты? Использую ли я правильные процедуры ?? А потом потратить 5 часов, пробуя все комбинации кода и модулей.


person blissweb    schedule 09.04.2020    source источник


Ответы (1)


Очень простой ответ на это — ни один из вышеперечисленных. Это очень вводящее в заблуждение сообщение об ошибке, особенно когда написанный вами код был разработан для сохранения двоичного файла со странным расширением.

Что это на самом деле означает...

    I HAVE NO IDEA HOW TO DISPLAY THIS DATA ! - Yours Jupyter

Итак, перейдите в проводник, Finder перейдите к только что сохраненному файлу и откройте его. Вуаля !! Все сработало именно так, как и планировалось, ошибок нет.

Надеюсь, это сэкономит другим людям много часов отладки, и, пожалуйста, Jupyter, измените свое сообщение об ошибке.

person blissweb    schedule 09.04.2020