Cadena a hexadecimal en Python
Los valores hexadecimales tienen una base de 16. En Python, las cadenas hexadecimales tienen el prefijo 0x.
La función hex() se utiliza para convertir un entero decimal en su número hexadecimal respectivo. Por ejemplo,
a = 102
print(hex(a))
Producción :
0x66
También podemos convertir valores flotantes a hexadecimales usando la función hex() con la función float(). El siguiente código implementa esto.
a = 102.18
print(float.hex(a))
Producción :
0x1.98b851eb851ecp+6
No podemos convertir una cadena usando esta función. Entonces, si tenemos una situación en la que tenemos una cadena hexadecimal y queremos convertirla en el número hexadecimal, no podemos hacerlo directamente. Para tales casos, tenemos que convertir esta cadena al valor decimal requerido usando la función int() y luego convertirla al número hexadecimal usando la función hex() discutida anteriormente.
El siguiente código muestra esto.
hex_s = "0xEFA"
a = int(hex_s, 16)
hex_n = hex(a)
print(hex_n)
Producción :
0xefa
Los caracteres de la cadena no tienen ningún valor hexadecimal correspondiente. Sin embargo, si convertimos una cadena a un objeto de tipo bytes, usando la función encode(), podemos convertirla a su valor hexadecimal usando la función hex().
Por ejemplo,
s = "Sample String".encode("utf-8")
print(s.hex())
Producción :
53616d706c6520537472696e67
En el código anterior, codificamos la cadena en el tipo utf-8 y la convertimos en tipos de bytes.
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedInArtículo relacionado - Python String
- Eliminar comas de cadena en Python
- Cómo verificar si una cadena está vacía de una manera pythonista
- Convertir una cadena en nombre de variable en Python
- Cómo eliminar los espacios en blanco de una cadena en Python
- Cómo extraer números de una cadena en Python
- Cómo convertir una cadena a datetime en Python
