Основное отличие в мутабельности (изменяемости). Список — мутабельный, кортеж — немутабельный.
- Списки (list)
- Могут быть модифицированы после создания (добавление, удаление, изменение элементов).
- Создаются с использованием квадратных скобок
[].
- Немного больше размер в памяти и немного медленнее по сравнению с кортежами (из-за необходимости зарезервировать место для будущих изменений).
- Часто используются для коллекций однородных элементов, размер которых может меняться.
- Кортежи (tuple)
- Не могут быть модифицированы после создания. Попытка изменить элемент вызовет ошибку.
- Создаются с использованием круглых скобок
() (скобки необязательны для кортежей с более чем одним элементом, но рекомендуются для ясности; для кортежа из одного элемента нужна запятая).
- Немного меньше размер в памяти и немного быстрее по сравнению со списками.
- Часто используются для хранения разнородных элементов, представляющих собой единую сущность (например, координаты
(x, y)) или в качестве ключей словарей (т.к. они хешируемые благодаря немутабельности).
python