print 077777#how can i get binary
i use python2.5
Make a map of hexadecimal characters to binary sequences, then run the number through (note: only works for non-negative numbers):
def bin(value):
binmap = {'0': '0000', '1': '0001', ..., 'f': '1111'}
return ''.join(binmap[x] for x in ('%x' % (value,))).lstrip('0') or '0'
0b prepended, for compatibility with the built-in bin function present in Python 2.6.return '-0b'[value>=0:] + ... % (abs(value),) ... to make it support negative numbers and be compatible with binSimplest (not fastest!) way to get a binary string for an int in Python 2.5:
def dobin(n):
digs = []
s = ''
if n<0:
s = '-'
n = -n
while True:
digs.append(str(n % 2))
n /= 2
if not n: break
if s: digs.append(s)
digs.reverse()
return ''.join(digs)
Are you looking for speed, or for clarity?
Here are some recipes from ActiveState Code you might find helpful: Format integer as binary string
My initial answer only works in Python 2.6 and up as Alex correctly pointed out.
Like this:
print '{0:b}'.format(077777)