Модуль Python – это, по сути, файл сценария Python, который может содержать переменные, функции и классы. Модули Python помогают нам организовывать наш код и затем ссылаться на него в других классах или сценариях Python.
Модули Python
A file containing Python definitions and statements is called a python module. So naturally, the file name is the module name which is appended with the suffix .py
. For better understanding let’s create a python module to explore it completely. First create a file named printNumbers.py
with the following contents.
def printForward(n):
#печать от 1 до n
for i in range(n):
print(i+1)
def printBackwards(n):
#печать от n до 1
for i in range(n):
print(n-i)
Теперь в интерпретаторе Python импортируйте этот модуль с помощью следующей команды;
import printNumbers
Эта команда импорта будет искать файл printNumbers.py
в текущем каталоге и местоположениях переменной PATH. Как только файл будет найден, код в файле будет доступен для нас. Теперь, чтобы получить доступ к функции модуля, нам нужно использовать имя модуля, как показано ниже: Иногда, если модуль большой, для упрощения вызова функции мы можем переименовать импорт, как показано ниже:
Импорт конкретной функции из модуля Python
Иногда нет необходимости импортировать все функции модуля Python. Мы можем нуждаться только в одной или двух функциях. В таком случае мы можем использовать следующий вариант оператора импорта; Важно отметить, что при импорте
printForward
он включается в текущую таблицу символов. Поэтому нам не нужно вызывать функцию так – printNumbers.printForward()
Иногда может быть полезен другой вариант. Здесь мы использовали переименование, как делали ранее, чтобы облегчить использование функции. Также, если мы хотим импортировать все имена, которые определяет модуль, существует еще один вариант для импорта. Это импортирует все имена, за исключением тех, которые начинаются с подчеркивания (
_
). Но это не идеальная практика, так как это вводит неизвестный набор имен в интерпретатор.
Часто задаваемые вопросы о модулях Python
Давайте рассмотрим некоторые часто задаваемые вопросы, связанные с модулями Python.
Какие встроенные модули есть в Python?
Есть много встроенных модулей в Python. Некоторые из важных – collections, datetime, logging, math, numpy, os, pip, sys и time. Вы можете выполнить команду help('modules')
в оболочке Python, чтобы получить список доступных модулей.
В чем разница между модулем и пакетом в Python?
Python пакет – это набор модулей Python. Модуль Python – это одиночный файл Python, тогда как пакет Python – это каталог с несколькими скриптами Python и файлом __init__.py
, определяющим детали пакета.
Где я могу найти список модулей Python?
Вы можете найти список модулей Python на их официальной странице в Индексе модулей Python. Однако, если вам нужен список модулей Python, доступных вам, выполните команду help('modules')
в оболочке Python, чтобы получить список доступных модулей.

Пожалуйста, проверьте этот репозиторий GitHub для списка наиболее важных модулей Python и изучите их с помощью соответствующих учебников и примерных программ.
Как я могу импортировать модуль из другого каталога?
Когда мы пытаемся импортировать модуль Python, он ищется в текущем каталоге и местоположении переменной PATH. Если ваш файл Python не находится в этих местах, вы получите ошибку ModuleNotFoundError
. Решение заключается в импорте модуля sys
и добавлении необходимого каталога к его переменной path. В приведенном ниже коде показана ошибка при попытке импорта из другого каталога и способ ее устранения путем добавления каталога в переменную path.
$ python3.7
Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 26 2018, 23:26:24)
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import test123
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'test123'
>>> import sys
>>> sys.path.append('/Users/pankaj/temp')
>>> import test123
>>> test123.x
10
>>> test123.foo()
foo
>>>
Список модулей Python
Существует тысячи модулей Python, и каждый день появляются новые. Мы написали руководства по многим популярным модулям Python. Просто следуйте по ссылкам из таблицы ниже, чтобы узнать больше о них.
Ссылки:
Source:
https://www.digitalocean.com/community/tutorials/python-modules