В чем различие использования кортежей и списков
Списки и кортежи, хотя они во многом и похожи друг на друга, предназначены для обслуживания различныз задач. Кортежи во многом подобны типу record в языке Pascal или типу struct языка C++. Кортежи хорошо подходят для хранения наборов данных, где каждый набор представляет собой группу значений различных типов. В качестве примера можно привести координаты точки, для описания которой необходимо хранить два или три числа
Списки больше похожи на обычные массивы в других языках программирования. Они в основном предназначены для хранения значений одного типаи и операции над элементами списка производятся последовательно. Так, например, функция os.listdir('.') возвращает строковый список, каждый элемент которого представляет собой имя файла в текущем каталоге файловой системы
Кортежи неизменяемы. Если кортеж был создан, то
нельзя изменить значение ни одного его элемента. Списки, напротив, изменчивы. В любой момент
можно изменить каждый элемент списка. Только постоянные наборы могут быть использованы как
клюси словарей, следовательно, в качестве ключей словаря можно
использовать кортеж, но не список.