Hexadecimal y Binario en Python
por dGil el 20/12/2008, en Programación, Python, Tutoriales
Python, como la mayoría de lenguajes, permite trabajar con hexadecimal (base 16), decimal (base 10), octal (base 8) y a partir de la versión 2.6 también se puede usar binario (base 2). Aunque parezca raro que no se implementara base binaria hasta la versión 2.6, normalmente el uso de binario se puede substiuir por hexadecimal. Aún así, se agradece que podamos escojer nosotros.
Para insertar un número en hexadecimal se utiliza el 0x delante del numero en hexadecimal:
numhex = 0x2f print numhex # 47
En python, siempre que se haga un print y no se indique lo contrario, se imprimen los números en base 10.
Ejemplo de inserción de binario y octal (para identificar un número como binario tiene que empezar con 0b y en el caso de octal por 0):
numbin = 0b1101 print numbin # 13
numoct = 011 print numoct # 9
Para poder imprimir los números en cada base tendremos que hacer lo siguiente:
# Hexadecimal print "%x" % 10 # 0xA print hex(10) # 0xA # Octal print "%o" % 10 # 012 print oct(10) # 012 # Binario print bin(10) # 0b1010
Para finalizar, comentar que al usar hex(), oct() o bin() retornan un string, no un int.