как развернуть бит "задом на перед"

electroscat

Новичок
Пользователь
Июл 17, 2021
3
0
1
Доброго времени ! Прошу простить мне мое невежество, я начинающий.. Есть задача, развернуть последовательность бит в байте задом на перед, то есть например сделать из 01101100 -> 00110110 .. подскажите пожалуйста, как это реализовать ?
 

Noor

Пользователь
Пользователь
Ноя 13, 2020
85
19
8
Запиши данные в лист и используй list.reverse()
 

electroscat

Новичок
Пользователь
Июл 17, 2021
3
0
1
Запиши данные в лист и используй list.reverse()

Благодарю !

Вот например:


for o in range(8):
data_bit[o]=int(((data) >> o) & 1)

data_bit.reverse()

получил реверсивный list...
А как из него байт получить обратно, подскажите пожалуйста, точнее не байт, а аналогичную "data" по типу переменную ?
 
Последнее редактирование:

electroscat

Новичок
Пользователь
Июл 17, 2021
3
0
1
сделал вот так:

bytes = []
byt = ""
for bit in data_bit:
byt += str(bit)
if len(byt) == 8:
bytes += [int(byt, 2)]
byt = ""

не красиво, зато все работает ))))
 

Форум IT Специалистов