Convert bytes to a string in Python

David Y.
jump to solution

The Problem

How can I convert a sequence of bytes to a string using Python?

The Solution

We can do this using Python’s [bytes.decode()] method:

my_byte_sequence = b'Sample'
my_string = my_byte_sequence.decode()

By default, this method will assume that the bytes sequence is encoded as UTF-8. To convert a bytes sequence with a different supported encoding, we can provide an argument to decode(). For example, if our sequence is encoded as ASCII:

my_ascii_string = my_byte_sequence.decode("ascii")

Note that if the byte sequence contains invalid characters for the specified encoding, a UnicodeDecodeError will be raised. In that case, you can try a different encoding.

Considered "not bad" by 4 million developers and more than 150,000 organizations worldwide, Sentry provides code-level observability to many of the world's best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

Sentry