bytes-like object

In Python, a bytes-like object is any object that supports the buffer protocol. This protocol allows an object to expose its underlying binary data or buffer in a way that can be accessed by other objects.

Bytes-like objects include bytes, bytearray, and memoryview objects, as well as many other objects in Python’s standard library that provide binary data manipulation.

Bytes-like objects are useful when you’re working with binary data, such as reading from or writing to files in binary mode, handling network data, or processing images. They allow you to efficiently manipulate binary data without needing to convert it to other data types, which can be both time-consuming and memory-intensive.

Example

Here’s an example that demonstrates how to use bytes-like objects in Python:

Python
>>> # Example with bytes
>>> byte_data = b"Hello, Real Python!"
>>> byte_data
b'Hello, Real Python!'

>>> # Example with bytearray
>>> byte_array_data = bytearray(b"Hello, Real Python!")
>>> byte_array_data[7:11] = b"World"
>>> byte_array_data
bytearray(b'Hello, World Python!')

>>> # Example with memoryview
>>> byte_data = b"Hello, Real Python!"
>>> memory_view = memoryview(byte_data)
>>> memory_view[7:11].tobytes()
b'Real'

In this example, you see how bytes, bytearray, and memoryview objects can handle binary data in Python.

Tutorial

Basic Data Types in Python: A Quick Exploration

In this tutorial, you'll learn about the basic data types that are built into Python, including numbers, strings, bytes, and Booleans.

basics python

For additional information on related topics, take a look at the following resources:


By Leodanis Pozo Ramos • Updated Jan. 24, 2025 • Reviewed by Dan Bader