Стандартная библиотека Python
В то время как Справочник по языку Python описывает точный синтаксис и семантику языка Python, в этом справочном руководстве по библиотеке описана стандартная библиотека, распространяемая вместе с Python. В нём также описаны некоторые дополнительные компоненты, которые обычно включаются в дистрибутивы Python.
Стандартная библиотека Python очень обширна и предлагает широкий спектр возможностей, о чём свидетельствует приведённое ниже длинное содержание. Библиотека содержит встроенные модули (написанные на C), обеспечивающие доступ к системным функциям, таким как ввод-вывод файлов, которые иначе были бы недоступны программистам Python, а также модули, написанные на Python и предоставляющие стандартные решения многих задач, возникающих в повседневном программировании. Некоторые из этих модулей специально предназначены для поощрения и повышения переносимости программ на Python: они скрывают особенности конкретных платформ за платформенно-независимыми API.
Установщики Python для платформы Windows обычно включают всю стандартную библиотеку, а зачастую и множество дополнительных компонентов. В Unix-подобных операционных системах Python обычно предоставляется в виде набора пакетов, поэтому для получения некоторых или всех дополнительных компонентов может потребоваться воспользоваться средствами управления пакетами, поставляемыми с операционной системой.
Помимо стандартной библиотеки, существует активно развивающаяся коллекция из сотен тысяч компонентов (от отдельных программ и модулей до пакетов и целых платформ разработки приложений), доступных в индексе пакетов Python.
- Введение
- Встроенные функции
- Встроенные константы
-
Встроенные типы
- Проверка истинности
- Логические операции —
and,or,not - Сравнения
- Числовые типы —
int,float,complex - Логический тип —
bool - Типы итераторов
- Типы последовательностей —
list,tuple,range - Краткое описание методов текстовых и бинарных типов последовательностей
- Текстовый тип последовательности —
str - Бинарные типы последовательностей —
bytes,bytearray,memoryview - Типы множеств —
set,frozenset - Типы отображений —
dict - Типы менеджеров контекста
- Типы аннотаций типов — Обобщённый псевдоним, Объединение
- Другие встроенные типы
- Специальные атрибуты
- Ограничение длины при преобразовании целого числа в строку
- Встроенные исключения
- Гарантии потокобезопасности
-
Службы обработки текста
string— распространённые операции со строкамиstring.templatelib— поддержка строковых литералов-шаблоновre— операции с регулярными выражениямиdifflib— вспомогательные средства для вычисления различийtextwrap— перенос и форматирование текстаunicodedata— база данных Unicodestringprep— подготовка строк для Интернетаreadline— интерфейс GNU readlinerlcompleter— функция автодополнения для GNU readline
- Службы обработки бинарных данных
-
Типы данных
datetime— основные типы даты и времениzoneinfo— поддержка часовых поясов IANAcalendar— общие функции для работы с календарёмcollections— типы контейнеров данныхcollections.abc— абстрактные базовые классы контейнеровheapq— алгоритм очереди с приоритетами на основе кучиbisect— алгоритм двоичного поиска в массивеarray— эффективные массивы числовых значенийweakref— слабые ссылкиtypes— динамическое создание типов и имена встроенных типовcopy— операции поверхностного и глубокого копированияpprint— форматированный вывод данныхreprlib— альтернативная реализацияrepr()enum— поддержка перечисленийgraphlib— функции для работы с графоподобными структурами
-
Числовые и математические модули
numbers— абстрактные базовые классы числовых типовmath— математические функцииcmath— математические функции для комплексных чиселdecimal— десятичная арифметика с фиксированной и плавающей точкойfractions— рациональные числаrandom— генерация псевдослучайных чиселstatistics— функции математической статистики
- Модули функционального программирования
-
Доступ к файлам и каталогам
pathlib— объектно-ориентированные пути файловой системыos.path— распространённые операции с путямиstat— интерпретация результатовstat()filecmp— сравнение файлов и каталоговtempfile— создание временных файлов и каталоговglob— раскрытие шаблонов путей в стиле Unixfnmatch— сопоставление имён файлов с шаблонами в стиле Unixlinecache— произвольный доступ к строкам текстаshutil— высокоуровневые операции с файлами
- Сохранение данных
- Сжатие и архивирование данных
- Форматы файлов
- Криптографические службы
-
Общие службы операционной системы
os— различные интерфейсы операционной системыio— основные средства работы с потокамиtime— доступ к времени и его преобразованиеlogging— средство ведения журнала для Pythonlogging.config— настройка ведения журналаlogging.handlers— обработчики журналаplatform— доступ к идентификационным данным базовой платформыerrno— стандартные системные символы errnoctypes— библиотека внешних функций для Python
-
Библиотеки интерфейса командной строки
argparse— анализатор параметров, аргументов и подкоманд командной строкиoptparse— анализатор параметров командной строкиgetpass— переносимый ввод пароляfileinput— перебор строк из нескольких входных потоковcurses— управление терминалом для символьных дисплеевcurses.textpad— виджет ввода текста для программ cursescurses.ascii— утилиты для символов ASCIIcurses.panel— расширение со стеком панелей для cursescmd— поддержка построчных интерпретаторов команд
-
Параллельное выполнение
threading— параллелизм на основе потоковmultiprocessing— параллелизм на основе процессовmultiprocessing.shared_memory— общая память для прямого доступа из разных процессов- Пакет
concurrent concurrent.futures— запуск параллельных задачconcurrent.interpreters— несколько интерпретаторов в одном процессеsubprocess— управление подпроцессамиsched— планировщик событийqueue— класс синхронизированной очередиcontextvars— переменные контекста_thread— низкоуровневый API потоков
-
Сетевое взаимодействие и межпроцессное взаимодействие
asyncio— асинхронный ввод-выводsocket— низкоуровневый сетевой интерфейсssl— оболочка TLS/SSL для объектов сокетовselect— ожидание завершения операций ввода-выводаselectors— высокоуровневое мультиплексирование ввода-выводаsignal— установка обработчиков асинхронных событийmmap— поддержка файлов, отображённых в память
-
Обработка данных Интернета
email— пакет для работы с электронной почтой и MIMEjson— кодировщик и декодировщик JSONmailbox— работа с почтовыми ящиками в различных форматахmimetypes— сопоставление имён файлов с типами MIMEbase64— кодирование данных Base16, Base32, Base64 и Base85binascii— преобразование между бинарным форматом и ASCIIquopri— кодирование и декодирование данных MIME в формате quoted-printable
-
Средства обработки структурированной разметки
html— поддержка языка разметки гипертекстаhtml.parser— простой анализатор HTML и XHTMLhtml.entities— определения общих сущностей HTML- Модули обработки XML
xml.etree.ElementTree— API ElementTree для XMLxml.dom— API объектной модели документаxml.dom.minidom— минимальная реализация DOMxml.dom.pulldom— поддержка построения частичных деревьев DOMxml.sax— поддержка анализаторов SAX2xml.sax.handler— базовые классы обработчиков SAXxml.sax.saxutils— утилиты SAXxml.sax.xmlreader— интерфейс для анализаторов XMLxml.parsers.expat— быстрый разбор XML с помощью Expat
-
Интернет-протоколы и поддержка
webbrowser— удобное управление веб-браузеромwsgiref— утилиты WSGI и эталонная реализацияurllib— модули для работы с URLurllib.request— расширяемая библиотека для открытия URLurllib.response— классы ответов, используемые urlliburllib.parse— разбор URL на компонентыurllib.error— классы исключений, возникающих в urllib.requesturllib.robotparser— анализатор robots.txthttp— модули HTTPhttp.client— клиент протокола HTTPftplib— клиент протокола FTPpoplib— клиент протокола POP3imaplib— клиент протокола IMAP4smtplib— клиент протокола SMTPuuid— объекты UUID согласно RFC 9562socketserver— платформа для сетевых серверовhttp.server— HTTP-серверыhttp.cookies— управление состоянием HTTPhttp.cookiejar— обработка файлов cookie для HTTP-клиентовxmlrpc— модули сервера и клиента XMLRPCxmlrpc.client— доступ к клиенту XML-RPCxmlrpc.server— базовые серверы XML-RPCipaddress— библиотека для работы с IPv4/IPv6
- Мультимедийные службы
- Интернационализация
-
Графические пользовательские интерфейсы с Tk
tkinter— интерфейс Python к Tcl/Tktkinter.colorchooser— диалог выбора цветаtkinter.font— оболочка шрифтов Tkinter- Диалоговые окна Tkinter
tkinter.messagebox— диалоговые окна сообщений Tkintertkinter.scrolledtext— текстовый виджет с полосами прокруткиtkinter.dnd— поддержка перетаскиванияtkinter.ttk— тематические виджеты Tk- IDLE — редактор и оболочка Python
turtle— черепашья графика
-
Средства разработки
typing— Поддержка аннотаций типовpydoc— Генератор документации и система интерактивной справки- Режим разработки Python
doctest— Тестирование интерактивных примеров Pythonunittest— Инфраструктура модульного тестированияunittest.mock— Библиотека имитационных объектовunittest.mock— краткое руководствоtest— Пакет регрессионных тестов Pythontest.support— Утилиты для набора тестов Pythontest.support.socket_helper— Утилиты для тестирования сокетовtest.support.script_helper— Утилиты для тестирования выполнения Pythontest.support.bytecode_helper— Инструменты для тестирования корректной генерации байт-кодаtest.support.threading_helper— Утилиты для тестирования потоковtest.support.os_helper— Утилиты для тестирования ostest.support.import_helper— Утилиты для тестирования импортаtest.support.warnings_helper— Утилиты для тестирования предупреждений
-
Отладка и профилирование
- Таблица событий аудита
bdb— Инфраструктура отладчикаfaulthandler— Вывод трассировки стека Pythonpdb— Отладчик Python- Профилировщики Python
timeit— Измерение времени выполнения небольших фрагментов кодаtrace— Трассировка или отслеживание выполнения инструкций Pythontracemalloc— Отслеживание выделения памяти
- Упаковка и распространение программного обеспечения
-
Службы среды выполнения Python
sys— Параметры и функции, специфичные для системыsys.monitoring— Мониторинг событий выполненияsysconfig— Доступ к сведениям о конфигурации Pythonbuiltins— Встроенные объекты__main__— Среда выполнения кода верхнего уровняwarnings— Управление предупреждениямиdataclasses— Классы данныхcontextlib— Утилиты для контекстов оператораwithabc— Абстрактные базовые классыatexit— Обработчики завершенияtraceback— Вывод или получение трассировки стека__future__— Определения инструкций будущих версийgc— Интерфейс сборщика мусораinspect— Инспектирование действующих объектовannotationlib— Функции для интроспекции аннотацийsite— Хук конфигурации для конкретного сайта
- Пользовательские интерпретаторы Python
-
Импорт модулей
zipimport— Импорт модулей из ZIP-архивовpkgutil— Утилита расширения пакетовmodulefinder— Поиск модулей, используемых скриптомrunpy— Поиск и выполнение модулей Pythonimportlib— Реализацияimportimportlib.resources– Чтение, открытие и доступ к ресурсам пакетовimportlib.resources.abc– Абстрактные базовые классы для ресурсовimportlib.metadata– Доступ к метаданным пакетов- Инициализация пути поиска модулей
sys.path
-
Службы языка Python
ast— Абстрактные синтаксические деревьяsymtable— Доступ к таблицам символов компилятораtoken— Константы, используемые с деревьями разбора Pythonkeyword— Проверка ключевых слов Pythontokenize— Токенизатор исходного кода Pythontabnanny— Обнаружение неоднозначных отступовpyclbr— Поддержка обозревателя модулей Pythonpy_compile— Компиляция исходных файлов Pythoncompileall— Компиляция библиотек Python в байт-кодdis— Дизассемблер байт-кода Pythonpickletools— Инструменты для разработчиков pickle
- Службы, специфичные для MS Windows
-
Службы, специфичные для Unix
shlex— Простой лексический анализposix— Наиболее распространённые системные вызовы POSIXpwd— База данных паролейgrp— База данных группtermios— Управление tty в стиле POSIXtty— Функции управления терминаломpty— Утилиты псевдотерминалаfcntl— Системные вызовыfcntlиioctlresource— Сведения об использовании ресурсовsyslog— Процедуры библиотеки syslog в Unix
- Интерфейс командной строки (CLI) модулей
- Устаревшие модули
- Удалённые модули
- Вопросы безопасности
© 2001 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.14/library/index.html