En Python, el carácter ‘ b ‘ antes de una string se usa para especificar la string como una » string de bytes «.
Por ejemplo:
b_str = b’Oye, soy una string de bytes’
Ahora, b_str no almacena un objeto String, sino que almacena un objeto Byte String.
Diferencia entre strings y strings de bytes:
Las strings son caracteres normales que están en formato legible por humanos, mientras que las strings de bytes son strings que están en bytes. Generalmente, las strings se convierten primero en bytes como cualquier otro objeto porque una computadora puede almacenar datos solo en bytes. Cuando se trabaja con strings de bytes, no se convierten en bytes porque ya están en bytes .
¿Cómo se convierten las strings en bytes?
Las strings se convierten en bytes mediante la codificación. Hay varios formatos de codificación a través de los cuales las strings se pueden convertir en bytes. Por ej. ASCII, UTF-8, etc…
Para convertir una string en una string de bytes en python:
Python3
var = 'Hey I am a String'.encode('ASCII') print(var)
b'Hey I am a String'
Incluso si imprimimos el tipo de la variable, obtendremos el tipo de byte :
Python3
var = 'Hey I am a String'.encode('ASCII') print(type(var))
<class 'bytes'>
¿Cómo se convierte un objeto de byte en una string?
Al igual que la codificación se usa para convertir una string en un byte, usamos la decodificación para convertir un byte en una string:
Python3
var = b'Hey I am a Byte String'.decode('ASCII') print(var)
Hey I am a Byte String
Incluso si imprimimos el tipo de variable, obtendremos el tipo de string :
Python3
var = b'Hey I am a String'.decode('ASCII') print(type(var))
<class 'str'>
Publicación traducida automáticamente
Artículo escrito por indorexian y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA