Библиотеки являются структурными элементами фреймворков и состоят из пакетов. Предоставляемая библиотеками функциональность разрешает пользователям не разбираться в подробностях работы с используемыми пакетами.
Пакеты предоставляют конкретную функциональность. Точнее говоря, пакеты состоят из модулей, и каждый модуль представляет собой набор тесно связанных структур данных и функций в одном файле (например, файле .py).
Термин «фреймворк» является самым широким. Фреймворки предоставляют полный набор функциональных средств, специально спроектированных для выполнения определенной работы на высоком уровне (например, веб-разработки).
Принципиальное различие между списками и кортежами — изменяемость (mutability). Списки являются изменяемыми в том смысле, что данные объекта list можно изменить: вы можете присоединить новые элементы к концу списка, вставить элементы в середину, изменить и удалить элементы. Для обеспечения изменяемости Python предоставляет набор методов в классе list: append, extend, remove и т.д., которые следует знать. Эти методы перечислены на рис. 3.1.