В чем разница между модулем и библиотекой в Python?
У меня есть опыт работы с Java, и я новичок в Python. Я хочу убедиться, что я правильно понимаю терминологию Python, прежде чем идти дальше.
Я понимаю модуль: скрипт, который может быть импортирован многими скриптами, чтобы облегчить чтение. Как и в Java, у вас есть класс, и этот класс может быть импортирован многими другими классами.
Я понимаю библиотеку: библиотека содержит много модулей, которые разделены ее использованием.
Мой вопрос: библиотеки как пакеты, где у вас есть пакет, например, называется food , затем:
- chocolate.py
- sweets.py
- biscuts.py
содержатся в food пакет?
Или библиотеки используют пакеты, так что если у нас был другой пакет drink :
- milk.py
- juice.py
содержится в упаковке. library содержит две упаковки?
Кроме того, интерфейс прикладного программирования (API) обычно содержит набор библиотек, который находится на вершине иерархии:
- API
- Библиотека
- пакет
- модуль
- скрипт
Таким образом, API будет состоять из всего 2-5?
3 ответа
Модуль:
Модуль — это файл, содержащий определения и операторы Python. Имя файла — это имя модуля с суффиксом .py прилагается.
Пакет:
Пакеты — это способ структурировать пространство имен модуля Python с помощью «точечных имен модулей».
Если вы читаете документацию для import заявление дает более подробную информацию, например:
В Python есть только один тип объекта модуля, и все модули относятся к этому типу, независимо от того, реализован ли модуль в Python, C или чем-то еще. Чтобы упорядочить модули и обеспечить иерархию именования, в Python есть концепция пакетов.
Вы можете рассматривать пакеты как каталоги в файловой системе, а модули как файлы в каталогах, но не воспринимайте эту аналогию слишком буквально, поскольку пакеты и модули не обязательно должны происходить из файловой системы. Для целей этой документации мы будем использовать эту удобную аналогию каталогов и файлов. Как и каталоги файловой системы, пакеты организованы иерархически, и сами пакеты могут содержать подпакеты, а также обычные модули.
Важно помнить, что все пакеты являются модулями, но не все модули являются пакетами. Или, другими словами, пакеты — это просто особый вид модуля. В частности, любой модуль, который содержит __path__ Атрибут считается пакетом.
Отсюда и термин module относится к конкретной сущности: это класс, экземплярами которого являются module объекты, которые вы используете в программах Python. Он также используется, по аналогии, для ссылки на файл в файловой системе, из которой эти экземпляры «создаются».
Термин сценарий используется для обозначения модуля, цель которого должна быть выполнена. Он имеет то же значение, что и «программа» или «приложение», но обычно используется для описания простых и небольших программ (то есть одного файла, содержащего не более нескольких сотен строк). Написание сценария занимает минуты или несколько часов.
Термин библиотека — это просто общий термин для набора кода, который был разработан с целью его использования многими приложениями. Он предоставляет некоторые общие функциональные возможности, которые могут использоваться конкретными приложениями.
Когда модуль / пакет / что-то еще «публикуется», люди часто называют его библиотекой. Часто библиотеки содержат пакет или несколько связанных пакетов, но это может быть даже один модуль.
Библиотеки обычно не предоставляют какой-либо конкретной функциональности, т.е. вы не можете «запустить библиотеку».
API может иметь разные значения в зависимости от контекста. Например:
- он может определять протокол, такой как DB API или буферный протокол.
- он может определить, как взаимодействовать с приложением (например, Python/C API )
- когда это связано с библиотекой / пакетом, это просто интерфейс, предоставляемый этой библиотекой для ее функциональности (набор функций / классов / констант и т. д.)
В любом случае API не является кодом Python. Это описание может быть более или менее формальным.
Только пакет и модуль имеют четко определенное значение, специфичное для Python.
API не является собранием кода как такового — это больше похоже на спецификацию «протокола», в которой различные части (обычно библиотеки) взаимодействуют друг с другом. В Python есть несколько заметных «стандартных» API. Например, API БД
На мой взгляд, библиотека — это все, что не является приложением — в python библиотека — это модуль, обычно с подмодулями. Область применения библиотеки довольно разнообразна — например, стандартная библиотека Python обширна (с довольно большим количеством подмодулей), в то время как в PyPi есть много библиотек специального назначения, например, бэкпорт collections.OrderedDict для py __init__.py модуль (файл).
Модуль — это отдельный файл кода Python, предназначенный для импорта. Это немного упрощает, так как на практике довольно много модулей определяют, когда они запускаются как скрипт, и в этом случае делают что-то особенное.
Скрипт — это отдельный файл кода Python, предназначенный для выполнения в качестве «основной» программы.
Если у вас есть набор кода, который охватывает несколько файлов, у вас, вероятно, есть приложение, а не скрипт.
Библиотека: это коллекция модулей.
(Библиотека также содержит встроенные модули (написанные на C) + модули, написанные на python).
Модуль: каждый из набора стандартизированных частей или независимых единиц, которые можно использовать для построения более сложной структуры.
Говоря неформальным языком, модуль представляет собой набор строк кода, которые используются для определенной цели и могут использоваться в других программах как таковые, чтобы избежать СУХОГО (в отличие от самого себя) как команды и сосредоточения внимания на Основное требование источник
API — это интерфейс для взаимодействия других приложений с вашей библиотекой без прямого доступа.
Пакет в основном это каталог с файлами.
Скрипт означает серию команд в одном файле.
Я постараюсь ответить на это, не используя термины, которые использовали бы самые ранние из начинающих, и объясню, почему или как они использовались по-разному, наряду с наиболее «официальным» и / или наиболее понятным или единообразным использованием этих терминов.
Это может сбить с толку, и я запутался, усердно думая, так что не задумывайся об этом. В любом случае контекст имеет большое значение.
Библиотека— чаще всего ссылается на общую библиотеку или другую коллекцию, созданную с аналогичным форматом и использованием. Общая библиотека — это совокупность «стандартных», популярных и широко используемых модулей, которые можно рассматривать как инструменты для работы с одним файлом, на данный момент или в виде коротких путей, которые делают возможным или быстрее. Общая библиотека — это опция, которую большинство людей включают при установке Python. Поскольку у этого названия есть «Общая библиотека Python», его часто используют с похожей структурой и идеями. Ведьма — это просто иметь несколько модулей, может быть, даже пакеты, сгруппированные вместе, обычно в виде списка. Список обычно для их загрузки. Обычно это просто связанные файлы со схожими интересами. Это самый простой способ описать это.
Модуль— Модуль относится к файлу. В файле есть сценарий «внутри», а именем файла является имя модуля, файлы Python заканчиваются на.py. Все, что содержит файл — это код, который работает вместе, что-то происходит, используя функции, строки и т. Д. Основные модули, которые вы, вероятно, чаще всего видите, популярны, потому что это специальные модули, которые могут получать информацию из других файлов / модулей. Это сбивает с толку, потому что имя файла и модуля совпадают и просто отбрасывают.py. На самом деле это просто код, который вы можете использовать как ярлык, написанный кем-то, чтобы сделать что-то более легким или возможным.
Пакет— это термин, который обычно используется, хотя контекст имеет значение. Из моего опыта чаще всего используются несколько модулей (или файлов), которые сгруппированы вместе. Почему они сгруппированы, может быть по нескольким причинам, то есть когда контекст имеет значение. Это способы, которыми я заметил термин » пакет». Это группа загруженных, созданных и / или сохраненных модулей. Все это может быть правдой или только 1, но на самом деле это просто файл, который ссылается на другие файлы, которые должны быть в правильной структуре или формате, и вся эта сумма представляет собой сам пакет, установлен или может быть включен в общая библиотека питона. Пакет может содержать модули (файлы.py), поскольку они зависят друг от друга и иногда могут работать неправильно или вообще не работать. Всегда есть общая цель каждой части (модуля / файла) пакета, и общая сумма всех частей — сам пакет.
Чаще всего в пакетах Python используются модули, потому что имя пакета — это имя модуля, который используется для соединения всех частей. Таким образом, вы можете ввести пакет, потому что он является модулем, также позволяет ему вызывать другие модули, которые не являются пакетами, потому что они выполняют только определенную функцию, или задача не включает другие файлы. У пакетов есть цель, и каждый модуль работает вместе для достижения этой конечной цели.
Больше всего путаницы возникает из-за простого имени файла или префикса к файлу, который используется в качестве имени модуля, а затем — имени пакета.
Помните, что модули и пакеты могут быть установлены. Библиотека обычно является общим термином для перечисления или форматирования группы модулей и пакетов. Очень похоже на общую библиотеку Питонов. Иерархия не будет работать, API-интерфейсы на самом деле не принадлежат, и если бы вы сделали это, они могли бы быть где угодно, и каждое программное обеспечение, включающее Script, Module и Packages, библиотека WORL, являющаяся таким общим словом, легко применимо ко многим вещам, также делает API способным сидеть выше или ниже этого. Некоторые модули могут быть основаны на другом коде, и я думаю, что это единственный раз, когда это относится к обсуждению, связанному только с Python.
9.1. Теория¶
Модули и пакеты являются неотъемлемой частью модульного программирования — организации программы как совокупности небольших независимых блоков, структура и поведение которых подчиняются определенным правилам.
Разработка программы как совокупности модулей позволяет:
упростить задачи проектирования программы и распределения процесса разработки между группами разработчиков;
предоставить возможность обновления (замены) модуля, без необходимости изменения остальной системы;
упростить тестирование программы;
упростить обнаружение ошибок.
Программный код часто разбивается на несколько файлов, каждый из которых используется отдельно от остальных. Одним из методов написания модульных программ является объектно-ориентированное программирование .
9.1.1. Основные понятия¶
Модуль (англ. Module) — специальное средство языка программирования, позволяющее объединить вместе данные и функции и использовать их как одну функционально-законченную единицу (например, математический модуль, содержащий тригонометрические и прочие функции, константы \(\pi\) , \(\epsilon\) и т.д.).
Пакеты (англ. Package) являются еще более крупной единицей и представляют собой набор взаимосвязанных модулей, предназначенных для решения задач определенного класса некоторой предметной области (например, пакет для решения систем уравнений, который может включать математический модуль, модуль со специальными типами данных и т.д.).
9.1.2. Модули и пакеты в Python¶
Модуль — отдельный файл с кодом на Python, содержащий функции и данные:
имеет расширение *.py (имя файла является именем модуля);
может быть импортирован (подключен) (директива import . );
может быть многократно использован.
Пакеты в Python — это способ структуризации модулей. Пакет представляет собой папку, в которой содержатся модули и другие пакеты и обязательный файл __init.py__ , отвечающий за инициализацию пакета.
Так, например, пакет xml имеет следующую структуру:
где каждый модуль (или вложенный пакет) отвечает за свою часть реализации работы с XML-форматом, однако рассматривается как единое целое в виде пакета.
Одна из основных целей использования как модулей, так и пакетов — реализация модели пространства имен, позволяющей логически группировать и в то же время изолировать различные идентификаторы. Например, при наличии глобальной переменной author в модуле A и B не произойдет конфликта, т.к. они находятся в разном пространстве имен: A.author и B.author соответственно.
9.1.2.1. Классификация¶
Все модули/пакеты в Python можно разделить на 4 категории:
Встроенные (англ. Built-in).
Модули, встроенные в язык и предоставляющие базовые возможности языка (написаны на языке Си).
К встроенным относятся как модули общего назначения (например, math или random ), так и плаиформозависимые модули (например, модуль winreg , предназначенный для работы с реестром ОС Windows, устанавливается только на соответствующей ОС).
Список установленных встроенных модулей можно посмотреть следующим образом:
Стандартная библиотека (англ. Standard Library).
Модули и пакеты, написанные на Python, предоставляющие расширенные возможности, например, json или os .
Сторонние (англ. 3rd Party).
Модули и пакеты, которые не входят в дистрибутив Python, и могут быть установлены из каталога пакетов Python (англ. PyPI — the Python Package Index, более 90.000 пакетов) с помощью утилиты pip :
При установке пакета автоматически устанавливаются зависимые пакеты.
Модули и пакеты, создаваемые разработчиком.
Примечание
Создание собственных пакетов не рассматривается в рамках настоящего курса.
В собственной программе рекомендуется выполнять импорт именно в таком порядке: от встроенных до собственных модулей/пакетов.
9.1.2.2. Подключение и использование¶
Для использования модуля или пакета в коде необходимо его предварительно подключить (импортировать).
Импорт модуля или пакета выполняется единожды инструкцией import , располагаемой, как правило, в начале файла.
Выполнить подключение модуля можно несколькими способами:
Пакет подключается аналогичным образом. Кроме того, имеется возможность импорта отдельных модулей из пакета, если нет необходимости использовать весь пакет:
Различные варианты подключения модуля и пакета приведены в Листингах 9.1.1 (а-г).
В чем разница между модулем и библиотекой в Python?
У меня есть опыт работы с Java, и я новичок в Python. Прежде чем продолжить, я хочу убедиться, что правильно понимаю терминологию Python.
Мое понимание модуль это: скрипт, который может быть импортирован многими скриптами, чтобы облегчить чтение. Как и в java, у вас есть класс, и этот класс может быть импортирован многими другими классами.
Мое понимание библиотека это: Библиотека содержит много модули которые разделены его использованием.
Мой вопрос: библиотеки похожи на пакеты, где у вас есть пакет, например, называемый food , затем:
- шоколад.py
- сладости.ру
- печенье.py
содержатся в food пакет?
Или библиотеки используют пакеты, поэтому, если бы у нас был другой пакет drink :
- молоко.py
- сок.py
содержится в упаковке. library содержит два пакета?
Кроме того, интерфейс прикладного программирования (API) обычно содержит набор библиотек, находящихся на вершине иерархии:
- API (Программный интерфейс приложения)
- Библиотека
- Упаковка
- Модули
- Сценарий
Так что API будет состоять из всего от 2 до 5?
Python использует термин «пакет», а не «библиотека» (кроме стандартной библиотеки). — John Zwinck
Вот хорошая статья, объясняющая модули, пакеты, библиотеки и фреймворки в контексте python: Learnpython.com/blog/… — Dr Nisha Arora
4 ответы
Модули:
Модуль — это файл, содержащий определения и инструкции Python. Имя файла — это имя модуля с суффиксом .py прилагается.
Упаковка:
Пакеты — это способ структурирования пространства имен модулей Python с помощью «точечных имен модулей».
Если вы читали документацию по import оператор дает более подробную информацию, например:
Python имеет только один тип объект модуля, и все модули относятся к этому типу, вне зависимости от того, реализован ли модуль на Python, C или на чем-то другом. Чтобы помочь организовать модули и обеспечить иерархию имен, в Python есть концепция пакетов.
Вы можете думать о пакетах как о каталогах в файловой системе, а о модулях как о файлах внутри каталогов, но не воспринимайте эту аналогию слишком буквально, поскольку пакеты и модули не обязательно должны происходить из файловой системы. Для целей этой документации мы будем использовать эту удобную аналогию каталогов и файлов. Подобно каталогам файловой системы, пакеты организованы иерархически, и сами пакеты могут содержать подпакеты, а также обычные модули.
Важно помнить, что все пакеты являются модулями, но не все модули являются пакетами. Или, другими словами, пакеты — это особый вид модулей. В частности, любой модуль, содержащий __path__ атрибут считается пакетом.
Отсюда и термин module относится к конкретному объекту: это класс, экземпляры которого являются module объекты, которые вы используете в программах на Python. Он также используется по аналогии для ссылки на файл в файловой системе, из которого эти экземпляры «созданы».
Термин скрипт используется для обозначения модуля, цель которого должна быть выполнена. Оно имеет то же значение, что и «программа» или «приложение», но обычно используется для описания простых и небольших программ (т. е. один файл, содержащий не более нескольких сотен строк). Написание сценария занимает минуты или несколько часов.
Термин библиотека это просто общий термин для группы кода, который был разработан с целью его использования во многих приложениях. Он предоставляет некоторые общие функции, которые могут использоваться конкретными приложениями.
Когда модуль/пакет/что-то еще «опубликовано», люди часто называют его библиотекой. Часто библиотеки содержат пакет или несколько связанных пакетов, но это может быть даже один модуль.
Библиотеки обычно не предоставляют никакой конкретной функциональности, т.е. вы не можете «запустить библиотеку».
API может иметь разные значения в зависимости от контекста. Например:
- он может определить протокол, подобный БД API или буферный протокол.
- он может определить, как взаимодействовать с приложением (например, Python/C API )
- когда речь идет о библиотеке/пакете, это просто интерфейс, предоставляемый этой библиотекой для ее функциональности (набор функций/классов/констант и т. д.).
В любом случае API не код питона. Это описание, которое может быть более или менее формальным.
ответ дан 05 окт ’13, 14:10
Только пакет и модуль имеют четко определенное значение, специфичное для Python.
An API (Программный интерфейс приложения) это не набор кода сам по себе — это больше похоже на спецификацию «протокола», как различные части (обычно библиотеки) взаимодействуют друг с другом. В python есть несколько примечательных «стандартных» API. например БД API
На мой взгляд, библиотека это что-то, что не является приложению — в питоне библиотека — это модуль — обычно с подмодули. Область действия библиотеки довольно изменчива — например, стандартная библиотека Python огромен (с довольно большим количеством подмодулей), в то время как в PyPi есть много библиотек для конкретных целей, например бэкпорт collections.OrderedDict для ру < 2.7
A пакет представляет собой набор модулей Python под общим пространством имен. На практике один из них создается путем размещения нескольких модулей Python в каталоге со специальным __init__.py модуль (файл).
A модуль представляет собой один файл кода Python, предназначенный для импортный. Это небольшое упрощение, так как на практике довольно много модулей определить, когда они запускаются как скрипт и сделать что-то особенное в этом случае.
A скрипт представляет собой один файл кода Python, предназначенный для выполненный в качестве «основной» программы.
Если у вас есть набор кода, который охватывает несколько файлов, у вас, вероятно, есть приложению вместо сценария.
ответ дан 05 окт ’13, 14:10
Итак, в matplotlib.pyplot , Matplotlib это пакет и пиплот модуль, да? @Кимвайс — Шуб
Библиотека: Это набор модулей.
(Библиотека либо содержит встроенные модули (написанные на C) + модули, написанные на python).
Модуль: Каждый из набора стандартизированных деталей или независимых блоков может быть использован для построения более сложной конструкции.
Говоря неформальным языком, модуль — это набор строк кода, которые используются для определенной цели и могут использоваться в других программах как есть, чтобы избежать DRY(Dна нет REPEAT Yсебя) в команде и сосредоточив внимание на главном требовании. источник
API (Программный интерфейс приложения) — это интерфейс для взаимодействия других приложений с вашей библиотекой без прямого доступа.
Упаковка это в основном каталог с файлами.
Сценарий означает серию команд в одном файле.

Я попытаюсь ответить на этот вопрос, не используя термины, которые использовали бы самые ранние из начинающих, и объяснить, почему или как они используются по-разному, наряду с наиболее «официальным» и/или наиболее понятным или единообразным использованием терминов.
Это может сбивать с толку, и я слишком сильно запутался, так что не думайте об этом слишком много. В любом случае контекст имеет большое значение.
Библиотека— Чаще всего будет ссылаться на общую библиотеку или другую коллекцию, созданную в похожем формате и использовании. Общая библиотека представляет собой сумму «стандартных», популярных и широко используемых модулей, которые можно рассматривать как инструменты с одним файлом, на данный момент или короткие пути, делающие что-то возможным или ускоряющим. Общая библиотека — это опция, которую большинство людей включают при установке Python. Поскольку она носит название «Общая библиотека Python», она часто используется с похожей структурой и идеями. Ведьма просто должна иметь кучу модулей, может быть, даже пакетов, сгруппированных вместе, обычно в виде списка. Список, как правило, для их загрузки. Как правило, это просто связанные файлы со схожими интересами. Это самый простой способ описать это.
Модули— Модули относится к файлу. В файле есть скрипт, а имя файла — это имя модуля, файлы Python заканчиваются на .py. Все, что содержится в файле, — это код, который вместе запускает что-то, используя функции, строки и т. д. Основные модули, которые вы, вероятно, видите чаще всего, популярны, потому что это специальные модули, которые могут получать информацию из других файлов/модулей. Это сбивает с толку, потому что имя файла и модуля совпадают и просто удаляют .py. На самом деле это просто код, который вы можете использовать как ярлык, написанный кем-то, чтобы сделать что-то проще или возможным.
Упаковка— Этот термин обычно используется иногда, хотя контекст имеет значение. По моему опыту, чаще всего используется несколько модулей (или файлов), сгруппированных вместе. Почему они сгруппированы вместе, может быть по нескольким причинам, то есть когда контекст имеет значение. Вот как я заметил термин пакет(ы) использовал. Они представляют собой группу загруженных, созданных и/или сохраненных модулей. Что может быть правдой все или только 1, но на самом деле это просто файл, который ссылается на другие файлы, которые должны быть в правильной структуре или формате, и вся эта сумма представляет собой сам пакет, установленный или, возможно, включенный в общая библиотека Python. Пакет может содержать модули (файлы .py), потому что они зависят друг от друга и иногда могут работать некорректно или вообще не работать. У каждой части (модуля/файла) пакета всегда есть общая цель, а общая сумма всех частей — это сам пакет.
Чаще всего в Python Packages — это Modules, потому что имя пакета — это имя модуля, который используется для соединения всех частей. Таким образом, вы можете ввести пакет, потому что это модуль, а также позволяет ему вызывать другие модули, которые не являются пакетами, потому что они выполняют только определенную функцию, или задача не включает другие файлы. У пакетов есть цель, и каждый модуль работает вместе для достижения этой конечной цели.
Больше всего путаницы возникает из-за простого имени файла или префикса файла, используемого в качестве имени модуля, а затем снова имени пакета.
Помните, что модули и пакеты могут быть установлены. Библиотека обычно является общим термином для перечисления или форматирования группы модулей и пакетов. Очень похоже на общую библиотеку Python. Иерархия не будет работать, API-интерфейсы на самом деле не принадлежат друг другу, и если бы вы это сделали, они могли бы быть где угодно и во всех продуктах, включая скрипты, модули и пакеты, библиотека worl, являющаяся таким общим словом, легко применимая ко многим вещам, также делает API способным сидеть выше или ниже этого. Некоторые модули могут быть основаны на другом коде, и я думаю, что это единственный раз, когда это будет относиться к обсуждению, связанному с чистым Python.
В чем разница между модулем и библиотекой в Python?
У меня есть опыт работы с Java, и я новичок в Python. Я хочу убедиться, что я правильно понимаю терминологию Python, прежде чем идти дальше.
Мое понимание модуля таково: скрипт, который может быть импортирован многими скриптами, чтобы облегчить чтение. Как и в Java, у вас есть класс, и этот класс может быть импортирован многими другими классами.
Мое понимание библиотеки таково: библиотека содержит множество модулей , которые разделены ее использованием.
Мой вопрос: библиотеки похожи на пакеты, где у вас есть пакет, например называется food , затем:
- chocolate.py sweets.py biscuts.py
Содержатся в пакете food ?
Или библиотеки используют пакеты, поэтому, если у нас был другой пакет drink :
- milk.py
- juice.py
Содержится в упаковке. library содержит два пакета?
Кроме того, интерфейс прикладного программирования (API) обычно содержит набор библиотек, который находится на вершине иерархии:
- API
- Библиотека
- пакет
- модуль
- Сценарий
Таким образом, API будет состоять из всего 2-5?
2 ответа
Библиотека . Это коллекция модулей.
(Библиотека также содержит встроенные модули (написанные на C) + модули, написанные на python).
Модуль . Каждый из набора стандартизированных частей или независимых единиц, которые можно использовать для построения более сложной структуры.
Говоря неформальным языком, модуль представляет собой набор строк кода, которые используются для определенной цели и могут использоваться в других программах как есть, чтобы избежать СУХОГО ( D на не R) повторить Y себя) в команде и сосредоточиться на основных требованиях. источник
API — это интерфейс для взаимодействия других приложений с вашей библиотекой без прямого доступа.
Пакет — это каталог с файлами.
Скрипт означает серию команд в одном файле.
Я постараюсь ответить на это, не используя термины, которые использовали бы самые ранние из начинающих, и объясню, почему или как они использовались по-разному, наряду с наиболее «официальным» и / или наиболее понятным или единообразным использованием этих терминов.
Это может сбить с толку, и я запутался, усердно думая, так что не задумывайся об этом. В любом случае контекст имеет большое значение.
Библиотека . Чаще всего это относится к общей библиотеке или другой коллекции, созданной в аналогичном формате и используемой. Общая библиотека — это совокупность «стандартных», популярных и широко используемых модулей, которые можно рассматривать как инструменты для работы с одним файлом, на данный момент или в виде коротких путей, которые делают возможным или быстрее. Общая библиотека — это опция, которую большинство людей включают при установке Python. Поскольку у этого названия есть «Общая библиотека Python», его часто используют с похожей структурой и идеями. Ведьма — это просто иметь несколько модулей, может быть, даже пакеты, сгруппированные вместе, обычно в виде списка. Список обычно для их загрузки. Обычно это просто связанные файлы со схожими интересами. Это самый простой способ описать это.
Модуль . Модуль ссылается на файл. В файле есть сценарий «внутри», а именем файла является имя модуля, файлы Python заканчиваются на .py. Все, что содержит файл — это код, который работает вместе, что-то происходит, используя функции, строки и т. Д. Основные модули, которые вы, вероятно, видите чаще всего, популярны, потому что это специальные модули, которые могут получать информацию из других файлов / модулей. Это сбивает с толку, потому что имя файла и модуля совпадают и просто отбрасывают .py. На самом деле это просто код, который вы можете использовать как ярлык, написанный кем-то, чтобы сделать что-то более легким или возможным.
Пакет . Этот термин обычно используется иногда, хотя контекст имеет значение. Из моего опыта чаще всего используются несколько модулей (или файлов), которые сгруппированы вместе. Почему они сгруппированы, может быть по нескольким причинам, то есть когда контекст имеет значение. Вот как я заметил используемый термин package (s) . Это группа загруженных, созданных и / или сохраненных модулей. Все это может быть истинно или только 1, но на самом деле это просто файл, который ссылается на другие файлы, которые должны быть в правильной структуре или формате, и вся эта сумма является самим пакетом, установленным или может быть включена в общая библиотека питона. Пакет может содержать модули (файлы .py), поскольку они зависят друг от друга и иногда могут работать неправильно или вообще не работать. Всегда есть общая цель каждой части (модуля / файла) пакета, и общая сумма всех частей — сам пакет.
Чаще всего в пакетах Python используются модули, потому что имя пакета — это имя модуля, который используется для соединения всех частей. Таким образом, вы можете ввести пакет, потому что это модуль, который также позволяет ему вызывать другие модули, которые не являются пакетами, потому что они выполняют только определенную функцию или задача не включает другие файлы. У пакетов есть цель, и каждый модуль работает вместе для достижения этой конечной цели.
Больше всего путаницы возникает из-за простого имени файла или префикса к файлу, который используется как имя модуля, а затем имя пакета.
Помните, что модули и пакеты могут быть установлены. Библиотека обычно является общим термином для перечисления или форматирования группы модулей и пакетов. Очень похоже на общую библиотеку Питонов. Иерархия не будет работать, API на самом деле не принадлежат, и если бы вы сделали это, они могли бы быть где угодно, и каждое программное обеспечение, включающее Script, Module и Packages, библиотека WORL, являющаяся таким общим словом, легко применимо ко многим вещам, также делает API способным сидеть выше или ниже этого. Некоторые модули могут быть основаны на другом коде, и я думаю, что это единственный раз, когда это относится к обсуждению, связанному только с Python.