Hi, how can I encode an integer with Base 36 in Python and then decode it again?
Thanks, Max
Hi, how can I encode an integer with Base 36 in Python and then decode it again?
Thanks, Max
Damn I wish I had read this before. Here is the answer:
def base36encode(number):
if not isinstance(number, (int, long)):
raise TypeError('number must be an integer')
if number < 0:
raise ValueError('number must be positive')
alphabet = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
base36 = ''
while number:
number, i = divmod(number, 36)
base36 = alphabet[i] + base36
return base36 or alphabet[0]
def base36decode(number):
return int(number,36)
print base36encode(1412823931503067241)
print base36decode('AQF8AA0006EH')
Sorry guys and thanks, Max