Sobes.tech
Middle
40

Pourquoi une liste Python peut-elle contenir des éléments de différents types tout en permettant un accès rapide par index ?

Entreprises à qui on a demandé
ИП Ганус Александр Андреевич

Réponse de l'IA

sobes.tech IA

В Python список (list) реализован как динамический массив, который хранит не сами объекты, а ссылки (указатели) на объекты. Благодаря этому в одном списке могут храниться элементы разных типов — каждый элемент просто указывает на объект с соответствующим типом.

Доступ по индексу быстрый (O(1)), потому что список — это массив указателей, и по индексу можно мгновенно получить адрес нужного объекта. Сам объект может быть где угодно в памяти, но ссылка на него хранится в массиве подряд, что обеспечивает быструю индексацию.

Пример:

lst = [123, 'abc', 3.14, [1, 2, 3]]
print(lst[1])  # 'abc'

Здесь lst содержит ссылки на объекты разных типов: int, str, float, list.