Я хочу преобразовать число dec в 6-битное двоичное число .. bin() работает нормально, но пропускает ведущие нули, которые важны.
bin()
например:
и т. Д., Причем наибольшее разрешенное число раз - 63.
Либо то, что сказал Мэтт в комментарии (bin(63)[2:].zfill(6)), либо используйте строки формата в Python 2.6 +:
bin(63)[2:].zfill(6)
'{0:06b}'.format(63)
Вы можете опустить первый ноль в Python 2.7+, поскольку вы можете неявно нумеровать группы.
Или просто:
n2=[2**x for x in xrange(0, 7)] n2.reverse() def getx(x): ret = '' for z in n2: if x >= z: x -= z ret += '1' else: ret += '0' return ret