¿Qué es bin() en Python y cómo convertir números a binario?

| Última modificación: 11 de diciembre de 2024 | Tiempo de Lectura: 2 minutos

El manejo de números en diferentes sistemas es un proceso bastante común en los diferentes lenguajes de programación, y más aun si trabajas en proyectos de hardware, criptografía o redes. Una de las herramientas más destacadas en este aspecto es bin(), una función que nos permite convertir números en binarios. El día de hoy te explicaremos más específicamente de qué trata y cómo puedes usar una de las funciones en Python más famosa.

bin() en Python

¿Qué es bin() en Python?

La función bin es una herramienta incorporada en Python que transforma un número entero en su representación binaria y devuelve este valor como una cadena de texto. El resultado incluye un prefijo 0b que indica que el número está en formato binario.

El prefijo 0b nos indica que el resultado está en base 2, es decir, en código binario. Si bien este prefijo no forma parte del número, es un estándar para señalar que se trata de un número binario.

La sintaxis de bin se resume en esto:

bin(numero)

El parámetro de entrada es un número entero. Si intentas usar bin con un valor no entero, Python lanzará un error de tipo, conocido como TypeError.

¿Cómo funciona bin()?

Lo que hace bin() es tomar un número entero como entrada y lo convierte a su representación en binario. Veamos un ejemplo en donde insertamos el número 15:

numero = 15
print(bin(numero))

Salida:

0b1111

🔴 ¿Quieres Aprender a Programar con Python? 🔴

Descubre el Full Stack Jr. Bootcamp - Aprende a Programar desde Cero de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp Aprende a Programar desde Cero por una semana

Para este ejemplo el número 15 se convierte a su forma binaria, que es 1111. Recuerda que el prefijo 0b indica que el resultado está en base 2.

Algunas funcionalidades de bin()

Algunas de las operaciones que podemos realizar con esta función son:

  • Conversión de números positivos y negativos: puedes usarla tanto con números positivos como con números negativos. Veamos cómo:
# Número positivo
print(bin(8)) # Salida: 0b1000

# Número negativo
print(bin(-8)) # Salida: -0b1000
  • Manejo de errores: Si haces el intento de usar bin() con valores que no sean enteros, como números decimales o cadenas, lo que te aparecerá será un error, así:
print(bin(3.5))

Esto generará el siguiente mensaje de error:

TypeError: 'float' object cannot be interpreted as an integer
  • bin() con objetos personalizados: también existe la posibilidad de utilizar bin() con objetos personalizados si defines el método index() dentro de la clase. Este método necesita devolver un entero para que bin() funcione correctamente. Ejemplifiquemos:
class Cantidad:
def __init__(self, manzanas, naranjas):
self.manzanas = manzanas
self.naranjas = naranjas

def __index__(self):
return self.manzanas + self.naranjas

cantidad = Cantidad(3, 2)
print(bin(cantidad))

Salida:

0b101

En este caso, el método index() suma las frutas y devuelve el resultado como un entero. Esto permite que bin() realice la conversión sin errores.

La función bin() solo funciona con números enteros. Si tienes un número decimal o una cadena, primero deberás convertirlo a entero utilizando int().

Si quieres seguir aprendiendo sobre programación y tecnología, únete al mejor bootcamp que solo tiene Keepcoding. Te hablamos del bootcamp en programación para principiantes, en donde sentarás las bases teóricas y prácticas que te permitirán escalar en el mundo de la programación y conseguir el empleo de tus sueños. Es el momento de dar el salto y construir tu futuro en IT. ¡Apúntae hoy mismo y transforma tu vida con nosotros!

Posts más leídos

¡CONVOCATORIA ABIERTA!

Aprende a programar desde cero

Full Stack JR. Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado