Какие библиотеки установлены в питоне по-умолчанию?Встроенные модулиСписок встроенных модлей из стандартной библиотеки Питона смотрите в докментации: The Python Standard Library.
Из перечисленных встроенными являются collections, datetime, gc, json. Остальные необходимо устанавливать отдельно, например, через пакетный менеджер Питона pip.
Порядок импортовПомимо этого, в соответствии с официальными рекомендациями PEP, порядок подключения библиотек следует использовать такой:
Стандартные библиотеки.Используемые сторонние модули.
Локальные модули вашего приложения/библиотеки.
В некоторых источниках также советуют отделять несколько импортов из одного модуля, а импорты с общей приоритетностью сортировать в алфавитном порядке.
Например, вот так:
# Стандартные модули
from collections import defaultdict
import datetime
import gc
import json
# Сторонние модули
from clickhouse_driver import Client
import psycopg2
import tqdm
# Отдельно несколько строк с Торнадо
from tornado.web import Application, RequestHandler
from tornado.ioloop import IOLoopВиртуальное окружение с зависимостями
Если в проекте много кода с разными зависимостями, то для выявления используемых библиотек следует использовать виртуальное окружение, например, модуль
virtualenv. Виртуальное окружение позволяет инкапсулироваться от модулей, установленных в Питоне глобально, устанавливая библиотеки с нужными версиями в рамках конкретного проекта. По этой теме много статей как на английском,
так и
на русском. При запуске проекта в виртуальном окружении Вы увидите ошибки о недостающих библиотеках, которые нужно установить в локальном окружении проекта.
Однако виртуальные окружения существуют для использования модулей на месте, они не сохраняются в системах контроля версий. Для этого используется файл requirements.txt, в котором описываются нужные библиотеки и опционально их версии. Для быстрого создания этого файла можно заморозить текущие библиотеки из локального pip'a, а при создании нового окружения можно будет их легко установить из этого файла. Подробнее читайте в документации: PIP > User Guide >
Requirements Files.@python_job_interview