logo

¿Cómo convertir hexadecimal a binario en Python?

El 'maleficio' es una abreviatura de hexadecimal . Es un sistema de numeración que utiliza 16 como su base. Se utiliza comúnmente en informática y electrónica digital porque puede representar una byte (8 bits) de datos con sólo dos dígitos, lo que los hace más concisos y fáciles de leer que los binarios. En hexadecimal, los dígitos 0-9 representan sus respectivos valores, mientras que las letras AF (o af) representar valores 10-15 , respectivamente.

cena versus cena

Método 1: usar la función bin()

La conversión de hexadecimal a binario en Python se puede realizar utilizando una función incorporada llamada papelera() . Esta función toma un número entero o una cadena como entrada y devuelve su equivalente binario.

Ejemplo:

 # Define a hexadecimal string hex_string = '1A' # Convert the hexadecimal string to an integer using the base 16 hex_integer = int(hex_string, 16) # Convert the integer to binary using the bin() function binary_string = bin(hex_integer) # Remove the '0b' prefix from the binary string binary_string = binary_string[2:] # Print the binary string print(binary_string) 

Producción:

 11010 

Método 2: uso de operadores bit a bit

Python proporciona incorporado operadores bit a bit que se puede utilizar para manipular datos binarios. Puede utilizar estos operadores para convertir una cadena hexadecimal a binaria convirtiendo primero la cadena a un número entero y luego utilizando operaciones bit a bit para extraer los dígitos binarios.

Ejemplo:

Aquí hay un fragmento de código de ejemplo:

 # Define a hexadecimal string hex_string = '1F' # Convert the hexadecimal string to an integer using the base 16 hex_integer = int(hex_string, 16) # Convert the integer to binary using bitwise operators binary_string = format(hex_integer, 'b') # Print the binary string print(binary_string) 

Producción:

 11111 

Explicación:

En este código, primero convertimos la cadena hexadecimal a un número entero usando el En t() funcionar con la base configurada en 16 . Después de eso, usamos el formato() funcionar con el especificador de formato 'b' para convertir el número entero en una cadena binaria. El formato() La función devuelve una cadena con ceros a la izquierda según sea necesario para representar el valor binario. Finalmente, imprimimos la cadena binaria.

Método 3: uso de la función hex2bin() del módulo binascii

pitón binascii El módulo proporciona un hex2bin() Función que se puede utilizar para convertir una cadena hexadecimal a binaria.

Ejemplo:

Aquí hay un fragmento de código de ejemplo:

 # Import the binascii module import binascii # Define a hexadecimal string hex_string = '1A' # Convert the hexadecimal string to binary using the binascii.unhexlify() function binary_string = bin(int.from_bytes(binascii.unhexlify(hex_string), byteorder='big')) # Print the binary string print(binary_string) 

Producción:

 0b11010 

Explicación:

cola en java

En este código, primero importamos el binascii módulo. Después de eso, definimos la cadena hexadecimal que queremos convertir. Pasamos la cadena hexadecimal a binascii.unhexlify() función para convertirlo en un objeto de bytes. Después de eso, convertimos el objeto de byte a un número entero usando el int.de_bytes() función, con el orden de bytes establecido en 'grande' (el byte más significativo primero). Finalmente, pasamos el número entero a la papelera() función para obtener la representación de la cadena binaria.

Nota: La función bin() devuelve la cadena binaria con un prefijo '0b'. Si desea eliminar el prefijo, puede utilizar el corte de cadenas.

Método 4: utilizar una lista de comprensión y formato de cadena

Podemos convertir una cadena hexadecimal a binaria usando un comprensión de la lista que itera sobre cada dígito hexadecimal en la cadena y lo convierte a su equivalente binario usando formato de cadena.

Ejemplo:

 # Define a hexadecimal string hex_string = '1A' # Convert the hexadecimal string to binary using a list comprehension and string formatting binary_string = ''.join(['{0:04b}'.format(int(d, 16)) for d in hex_string]) # Print the binary string print(binary_string) 

Producción:

 00011010 

Explicación:

En este código, primero definimos la cadena hexadecimal que queremos convertir. Después de eso, usamos un comprensión de la lista para iterar sobre cada dígito hexadecimal de la cadena. Para cada dígito, lo convertimos a un número entero usando el En t() funcionar con la base configurada en 16 y luego formatéelo como una cadena binaria con 4 dígitos utilizando el '{0:04b}'.formato() sintaxis de formato de cadena. Las cadenas binarias resultantes se recopilan en una lista, que luego se une en una sola cadena usando el ''.unirse() función.

Método 5: usar la biblioteca NumPy

Si tienes el biblioteca numérica instalado, puede utilizar el numpy.base_repr() Función para convertir una cadena hexadecimal a binaria.

eliminar el último compromiso git

Ejemplo:

 # Import the numpy library import numpy as np # Define a hexadecimal string hex_string = '1A' # Convert the hexadecimal string to binary using the numpy.base_repr() function binary_string = np.base_repr(int(hex_string, 16), base=2) # Print the binary string print(binary_string) 

Producción:

 11010 

Nota: La función numpy.base_repr() devuelve la cadena binaria sin ningún prefijo ni ceros a la izquierda, a diferencia de la función bin() incorporada.