Bytes para hacer una cuerda en Python

Bytes para hacer una cuerda en Python

En Python, cada vez que almacenamos algo, lo almacenará como un byte. Los bytes no son legibles por humanos, y las cadenas son formas legibles por humanos. Cada vez que almacenamos ninguna cadena, no la almacenará directamente como una cadena; se codificará en los bytes utilizando diferentes métodos como ASCII y UTF-8.

Por ejemplo, 'Soy un Linuxhint'.codificar ('ASCII')

En el ejemplo anterior, convertimos la cadena en bytes usando el método de codificación ASCII. Y cuando lo imprimamos usando el método de impresión de Python, veremos resultados como b'i soy un linuxhint '. Aquí podemos ver que la cadena solo sigue a un carácter, B. En realidad, no podemos leer los bytes, pero aquí la función de impresión de Python decodifica los bytes a las formas legibles por humanos para que podamos leer las cuerdas.

Pero, en realidad, cuando ejecutamos esta cadena para ver cada carácter de las cadenas de bytes, se imprimirá así:

str1 = 'Soy un Linuxhint'
Imprimir (Tipo (STR1))
str2 = b'i am a linuxhint '
Imprimir (Tipo (STR2))

Creamos dos cuerdas. Una cadena es sencilla. Y la otra cadena es bytes. Cuando imprimimos ambos tipos de cadenas, obtenemos resultados como se muestra a continuación. Los resultados a continuación muestran que una cadena es un tipo bytes y otro es un tipo de cadena.


Ahora, imprimiremos cada personaje de ambas cuerdas para encontrar la diferencia entre ellas. Primero, imprimiremos una cadena (str1) usando un bucle for, que es una cadena normal.

para un en str1:
Imprimir (a)

Producción:

I
a
metro
a
l
i
norte
u
X
H
i
norte
T

Ahora, vamos a imprimir otra cadena (str2) que es un tipo de byte.

para un en str2:
Imprimir (a)

Producción:

73
32
97
109
32
97
32
108
105
110
117
120
104
105
110
116

De los resultados anteriores, podemos ver las diferencias entre el tipo de bytes y el tipo de cadena. El tipo de bytes no son formas legibles por humanos.

Entonces, ahora vamos a ver diferentes métodos que pueden convertir los bytes en cuerdas.

Método 1: Usando la función map ()

En este método, usaremos la función MAP () para convertir los bytes en un formato de cadena. El pequeño programa pequeño despejará el concepto.

byte = [97, 99, 100]
S = ".unirse (mapa (chr, byte))
huellas dactilares)

Producción:

ACD

Línea 1: Creamos una lista de byte de nombre.

Línea 3: Luego pasamos los caracteres del elemento en la lista como un parámetro y un byte como parámetro para la función Join (), que unirá a todos los caracteres después de la conversión. Finalmente, el resultado se imprime.

Método 2: Usando la función decode ()

Otro método es una función decode (). La función de decodificación funciona justo opuesta de la función code ().

#convertir bytes a la cadena usando decode ()
str = b'blogs linuxhint '
Imprimir (STR)
Imprimir (tipo (STR))
# Ahora convierte bytes en cadena
salida = str.descodificar()
imprimir ('\ noutput:')
Imprimir (salida)
imprimir (tipo (salida))

Producción:

B'Blogs Linuxhint '

Producción:

Blogs Linuxhint

Línea 3: Hemos creado una cadena de byte.

Línea 4 a 5: Estas líneas simplemente imprimen información sobre la cadena que creamos en la línea 3.

Línea 8: Ahora, llamamos a la función de decodificación y guardamos el resultado en un nuevo nombre de variable.

Línea 11 a 12: Estas líneas muestran que ahora nuestra cadena ya no tiene el tipo de byte y que podemos confirmar el tipo de salida, que es un tipo de cadena.

Método 3: Usando los códecs.función decode ()

En este método, vamos a usar códecs.función decode (). Esta función se usa para convertir la cadena binaria en formas normales. Así que veamos cómo funciona esta función realmente.

#convert bytes a la cadena usando codecs ()
importar códecs
str = b'blogs linuxhint '
Imprimir (STR)
Imprimir (tipo (STR))
# Ahora convierte bytes en cadena
salida = códecs.decodificación (STR)
imprimir ('\ noutput:')
Imprimir (salida)
imprimir (tipo (salida))

Producción:

B'Blogs Linuxhint '

Producción:

Blogs Linuxhint

Línea 2: Importamos los códecs de la biblioteca.

Línea 3: Hemos creado una cadena de byte.

Línea 4 a 5: Estas líneas simplemente imprimen información sobre la cadena que creamos en la línea 3.

Línea 8: Ahora estamos llamando a los caodecos.función de decodificación y guardar el resultado en un nuevo nombre de variable.

Línea 11 a 12: Estas líneas muestran que ahora nuestra cadena ya no tiene el tipo de byte, y podemos confirmar el tipo de salida, que es un tipo de cadena.

Método 4: Usando la función str ()

También podemos convertir los bytes en cadenas normales usando la función Str (). El pequeño programa para comprender este método se da a continuación.

Si __name__ == '__main__':
str1 = b'blogs linuxhint '
Imprimir (STR)
Imprimir (tipo (STR))
# Ahora convierte bytes en cadena
salida = str (str1, 'utf-8')
imprimir ('\ noutput:')
Imprimir (salida)
imprimir (tipo (salida))

Producción:


Producción:

Blogs Linuxhint

Línea 2: Hemos creado una cadena de byte.

Línea 3 a 4: Estas líneas simplemente imprimen información sobre la cadena que creamos en la línea 3.

Línea 6: Ahora, llamamos a la función str () y guardamos el resultado en un nuevo nombre de variable.

Línea 7 a 9: Estas líneas muestran que ahora nuestra cadena ya no tiene el tipo de byte, y podemos confirmar el tipo de salida, que es un tipo de cadena.

Conclusión

Como programadores de Python, trabajamos en diferentes idiomas a diario, y a veces recibimos un error debido a los bytes. Entonces, en este artículo, estamos tratando de dar algunos métodos sobre cómo convertir los bytes en cadena para que cuando apliquemos cualquier método relacionado con la cadena, no reciba ningún error.

En este tutorial, hemos dado todos los conceptos que podemos usar para convertir los bytes en cadenas. Puede elegir de acuerdo con los requisitos de su programa.