In this article you’ll learn how CPython lists actually work under the hood:


how a static array model explains fast indexing and “no holes” behavior
why contiguity matters, and how indexing reduces to one computation
what really happens when the list grows: allocate → copy → repoint
how size vs capacity drives CPython’s over-allocation...