Форум сайта python.su
Какая функция, процедура, модуль помогут это сделать?
Вдобавок, считав бинарное значение, нужно будет иметь возможность перевести его в питоновскую переменную числового типа. Также нужно и обратное действие: число перевести в бинарное значение и записать его в файл.
Помню старинный basic-sinclair, там для ввода бинарных значений использовалась функция BIN. А каков аналог в питоне? Если функция не встроенная, подскажите хотя бы в каком модуле копать.
—————————————————————-
Спрошу заодно ещё об одном.
Никак не получается выдать в окошко IDLE текст в кодировке 866.
print var_text.decode('866','1251') не помогает.
Офлайн
А что такое “бинарное значение”? Сразу возникает вопрос, какая программа создала этот файл, в каком формате, и .т.д. Если это, например, wav-файл, то нужна библиотека обработки звука.
Если же формат какой-то нестандартный, но известный тебе, считай файл в строку, и обрабатывай её вручную побайтово (один символ - один байт).
——————————————-
О “ещё одном” желательно в отдельной теме спрашивать.
decode конвертирует в Unicode, encode - обратно.
print var_text.decode('cp866').encode('cp1251')
Офлайн
FoxPythonhttp://docs.python.org/lib/module-struct.html
Вдобавок, считав бинарное значение, нужно будет иметь возможность перевести его в питоновскую переменную числового типа. Также нужно и обратное действие: число перевести в бинарное значение и записать его в файл.
Отредактировано (Дек. 21, 2007 08:03:34)
Офлайн
Ещё могу посоветовать http://docs.python.org/lib/module-array.html , если нужно читать много бинарных данных из файла, только есть один косяк (а скорее это фича) - на 64-х битных системах длина стандартных целочисленных типов данных увеличивается вдвое, так что надо делать проверку в коде и использовать соответствующий формат.
Офлайн
StriverПонятно, а я думал, что можно сразу между любыми кодировками конвертировать.
decode конвертирует в Unicode, encode - обратно.
StriverПоказалось, что вопрос слишком маленький для отдельной темы.
О “ещё одном” желательно в отдельной теме спрашивать.
Офлайн