В CPython list — динамический массив ссылок, tuple — неизменяемая последовательность ссылок, dict и set основаны на хеш-таблицах. Это детали реализации, а не универсальное устройство всех Python VM.
Расскажите про внутреннее устройство dict, list, set, tuple.
В CPython list — динамический массив ссылок, tuple — неизменяемая последовательность ссылок, dict и set основаны на хеш-таблицах. Это детали реализации, а не универсальное устройство всех Python VM.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
В CPython list — динамический массив ссылок, tuple — неизменяемая последовательность ссылок, dict и set основаны на хеш-таблицах. Это детали реализации, а не универсальное устройство всех Python VM.
У list быстрый доступ по индексу и амортизированный append, но вставка в начало сдвигает элементы. Tuple не меняет состав ссылок, хотя вложенный объект может быть изменяемым. Dict хранит пары и порядок вставки, set — уникальные элементы без обещанного порядка. Операции хеш-таблиц в среднем O(1), но имеют худшие случаи.