Форум сайта python.su
0
Задача такая:
Необходимо в программе открыть любой файл в двоичном режиме. Тоесть иметь в итоге “0011011011000” и работать в дальнейшем с ним в таком виде. Ну например для того чтобы подсчитать сколько в нём нулей а скоко еденичек :)
Помогите реализовать.
Офлайн
0
Я смотрю тему переместили в раздел “Python для новичков”. :)
Мда… вопрос как раз для новичков. Боюсь он тут и помрёт неотвеченным.
Офлайн
1
Слово “Помогите” предусматривает что уже что-то сделано, но есть проблемы.
А не “Сделайте мне пожалуйста….”
Офлайн
0
Мне казалось это форум программистов на python а не знатоков тонкостей диалектики русского языка.
Покачто нет даже намёка на помощь не говоря уже о готовом коде.
Посты появляются, а воз и ныне там.
Офлайн
1
Я не буду помогать до тех пор, пока не увижу что вы сами что-то пытались сделать, и наткнулись на трудности которые не знаете как решить. Делать что-то за вас никто не обязан и не собирается.
Офлайн
0
file = open("/etc/hosts", "r").read()
def char2bin(char):
return "%08i" % int(bin(ord(char))[2:])
print "".join([char2bin(c) for c in file])Офлайн
41
pasaranax
как прикажите отличать 0b1111 от 1111 ?
“удобный вид” не для всех удобный, int('0b1111',2) прекрасно работает
сделай bin(1).lstrip('0b') получишь “удобный вид”
Офлайн
0
FerromanЯ делаю некую программу код которой по некоторым причинам показывать не хочу. Наткнулся на трудность описанную мной выше из-за отсутствий знаний в этой области. Я никого не просил делать за меня чтото, я просил помочь реализовать. Покажите мне пути, способы, инструментарий для работы с битами и байтами в python. Дайте совет дельный, ссылку на документацию где я могу заполнить пробел в знаниях. Абстрактные куски кода способные прояснить вопрос…
Я не буду помогать до тех пор, пока не увижу что вы сами что-то пытались сделать, и наткнулись на трудности которые не знаете как решить. Делать что-то за вас никто не обязан и не собирается.
Офлайн
72
Файл открывать в режиме “rb”, с данными работать через модуль struct
Офлайн
0
Похоже самый информативный ответ.
Офлайн