Модули Python
Модуль Python — это, по сути, файл сценария Python, который может содержать переменные, функции и классы. Модули Python помогают нам организовать наш код, а затем ссылаться на них в других классах или скриптах Python.
Модули Python
Файл, содержащий определения и операторы Python, называется модулем Python. Поэтому, естественно, имя файла — это имя модуля, к которому добавляется суффикс .py
. Для лучшего понимания давайте создадим модуль Python, чтобы изучить его полностью. Сначала создайте файл с именем printNumbers.py
со следующим содержимым.
def printForward(n):
#print 1 to n
for i in range(n):
print(i+1)
def printBackwards(n):
#print n to 1
for i in range(n):
print(n-i)
Теперь в интерпретаторе Python импортируйте этот модуль с помощью следующей команды:
import printNumbers
Импорт определенной функции модуля Python
Часто задаваемые вопросы о модулях Python
Давайте рассмотрим некоторые часто задаваемые вопросы, связанные с модулями Python.
Какие есть встроенные модули в Python?
В Python много встроенных модулей. Некоторые из важных - время. Вы можете выполнить команду help(modules)
в оболочке Python, чтобы получить список доступных модулей.
В чем разница между модулем и пакетом в Python?
Пакет Python — это набор модулей Python. Модуль Python — это один файл Python, тогда как пакет Python — это каталог, содержащий несколько скриптов Python и файл __init__.py
, определяющий детали пакета.
Где я могу найти список модулей Python?
Вы можете найти список модулей Python на официальной странице Python Module Index. Однако, если вы ищете доступные вам модули Python, вы можете выполнить команду help(modules)
в оболочке Python, чтобы получить список доступных модулей.
Пожалуйста, проверьте этот репозиторий GitHub для получения списка наиболее важных модулей Python и изучите их с помощью специальных руководств и примеров программ.
Как я могу импортировать модуль из другого каталога?
Когда мы пытаемся импортировать модуль Python, он просматривает текущий каталог и местоположение переменной PATH. Поэтому, если ваш файл Python отсутствует в этих местах, вы получите ModuleNotFoundError
. Решение состоит в том, чтобы импортировать модуль sys
, а затем добавить требуемый каталог к его переменной пути. В приведенном ниже коде показана ошибка, когда мы пытаемся импортировать из другого каталога, и то, как я исправляю ее, добавляя его каталог в переменную пути.
$ 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. Просто перейдите по ссылкам из таблицы ниже, чтобы изучить эти модули.
Python Modules |
---|
Python os module |
Python sys module |
Python time |
Python MySQL |
Python CSV |
Python multiprocessing |
Python pickle |
Python time sleep |
Python queue |
Python unittest |
Python socket |
Python SimpleHTTPServer |
Python json |
Python signal |
Python random |
Python System Command |
Python Daemon Thread |
Python Copy |
Python threading module |
Python struct |
Python logging |
Python subprocess |
Python argparse |
Python functools |
Python itertools |
Python getopt |
Python ftp |
Python tarfile |
Python lxml |
Python ConfigParser |
Python datetime |
Python decimal module |
Python collections |
Python zipfile |
Python pdb |
Python io |
Python fractions |
Python AST |
Python HTTP |
Python xmltodict |
Python gzip |
Python HTML Parser |
Python inspect module |
Python Send Email |
Python tempfile |
Python SQLite |
Python shutil |
Python timeit |
Python getpass module |
Python urllib |
Python pytz |
Python pendulum |
Python arrow module |
Использованная литература:
- https://docs.python.org/3/tutorial/modules.html
- https://docs.python.org/3/py-modindex.html