Я только начинаю использовать пакет bitarray в python, и попытка сделать bitarray из целого числа дает мне действительно запутанные результаты:
>>> import bitarray
>>> bitarray.bitarray(5)
bitarray('01000')
>>> bitarray.bitarray(5)
bitarray('00010')
>>> bitarray.bitarray(5)
bitarray('00100')
>>> bitarray.bitarray(5)
bitarray('00110')
Кто-нибудь знает, почему это происходит ??
Кроме того: что было бы лучшим способом сделать bitarray из int? Это работает, но преобразование строк кажется странным способом сделать это ...
>>> bitarray.bitarray(bin(5)[2:])
bitarray('101')
Редактировать: Я закончил тем, что переключился на цепочку битов , которая имеет простой способ получения цепочек битов из целых:
>>> bitstring.BitArray(uint=5,length=6)
BitArray('0b000101')