List и Tuple — это классы структуры данных Python; они могут хранить один или несколько объектов или значений в определенном порядке. Сохраняемые данные могут относиться к любому типу данных, включая тип Nothing, определяемый ключевым словом None.
Чтобы понять разницу между ними и когда их использовать, давайте пересмотрим список и кортежи.
Список:
У нас нет массивов в Python; вместо этого у нас есть тип данных List. Список динамический. Чтобы мы могли модифицировать его (Mutable), он обозначается квадратными скобками «[]». Это контейнер, который содержит различные типы объектов и используется для итерации объектов.
Мы можем создать список, используя квадратные скобки,
Мы можем получить доступ к элементам в списке, используя индексы,
Мы можем перезаписать/переназначить элемент в списке,
Кортеж:
Кортеж похож на списки, но он статичен, что означает, что мы не можем его изменить (неизменяемый). Набор скобок обозначает кортеж в Python.
Кортеж создается так,
Доступ к кортежу такой же, как и в списке; мы должны использовать индексы.
Теперь мы знаем об основах природы списков и кортежей. Теперь давайте посмотрим на сходство между списком и кортежем, а затем на различия.
Сходства между списком и кортежем:
Как мы обсуждали выше, список и кортеж похожи, и у них есть одна и та же функция, которую мы собираемся рассмотреть ниже.
- Кортеж и список могут хранить пустые, одну или несколько переменных в одном массиве.
- Мы можем создать кортеж или список с одинаковыми типами данных или смесью разных типов данных.
- Список или кортеж могут содержать повторяющиеся значения или повторяющиеся элементы.
- List и Tuple поддерживают распаковку.
- Мы можем получить доступ к элементам, используя индексы как в списке, так и в кортеже.
- Некоторые функции могут применяться с обеих сторон: len(), max(), min(), sum(), any(), all(), sorted().
- Мы можем добавить кортеж в список и список в кортеж.
Теперь давайте поговорим о разнице между списком и кортежем.
Разница между списком и кортежем:
- Мы уже видели, что синтаксис списка и кортежа различен, и список может изменяться, тогда как кортеж неизменяем.
- Время итерации списка медленнее и требует больше времени по сравнению с кортежем.
- Список потребляет больше памяти, тогда как кортеж потребляет меньше.
- Список предоставляет больше встроенных функций, чем кортеж.
- Списки склонны делать много ошибок, в отличие от операций с кортежами.
- Список может выполнять такие операции, как вставка и удаление, но кортеж подходит для элементов, доступных только для чтения/доступа.
Случаи использования:
Списки могут заменить кортежи, но в некоторых практических случаях кортеж представляет собой удобную структуру данных.
· Используйте кортеж, если вы знаете, какая информация входит в контейнер, например учетные данные пользователя, сведения о человеке и т. д.,
· Используйте список, когда вы хотите добавить похожие элементы или если вы, вероятно, добавляете/удаляете информацию/элемент, например, список покупок, имена сотрудников.,
· Использование кортежа может заставить программиста/интерпретатора/тестировщика понять, что данные не должны изменяться.
Вывод:
Поскольку мы понимаем список и кортеж, выбирать между ними будет легко.
Существенное отличие состоит в том, что список является изменяемым, а кортеж — неизменяемым.
Используйте список, когда списки увеличиваются или уменьшаются в течение жизненного цикла программы, и используйте кортеж, когда вы уверены, что данные не изменятся в течение жизненного цикла программы.
Здесь я попытался сделать так, чтобы вам было удобно работать со списками и кортежами в Python. Дайте мне знать ваши мысли в комментарии, и я скоро догоню еще один шедевр; а пока, адиос!
Картик Сараванан