The surprising way to save memory with BytesIO (via) Itamar Turner-Trauring explains that if you have a BytesIO
object in Python calling .read()
on it will create a full copy of that object, doubling the amount of memory used - but calling .getvalue()
returns a bytes
object that uses no additional memory, instead using copy-on-write.
.getbuffer()
is another memory-efficient option but it returns a memoryview which has less methods than the bytes
you get back from .getvalue()
- it doesn't have .find()
for example.
Recent articles
- Reverse engineering some updates to Claude - 31st July 2025
- Trying out Qwen3 Coder Flash using LM Studio and Open WebUI and LLM - 31st July 2025
- My 2.5 year old laptop can write Space Invaders in JavaScript now, using GLM-4.5 Air and MLX - 29th July 2025