Стандартная библиотека 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— Операции с текстовыми строками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— Общие операции с путямиfileinput— Перебор строк из нескольких потоков вводаstat— Интерпретация результатовstat()filecmp— Сравнение файлов и каталоговtempfile— Создание временных файлов и каталоговglob— Раскрытие шаблонов путей в стиле Unixfnmatch— Сопоставление имён файлов с шаблонами в стиле Unixlinecache— Произвольный доступ к текстовым строкамshutil— Операции с файлами высокого уровня
- Сохранение данных
- Сжатие и архивирование данных
- Форматы файлов
- Криптографические службы
-
Общие службы операционной системы
os— Различные интерфейсы операционной системыio— Основные средства для работы с потокамиtime— Доступ к времени и его преобразованиеargparse— Анализатор параметров командной строки, аргументов и подкомандgetopt— Анализатор параметров командной строки в стиле Clogging— Средство ведения журналов для Pythonlogging.config— Настройка ведения журналовlogging.handlers— Обработчики журналовgetpass— Переносимый ввод пароляcurses— Управление терминалом для символьных дисплеевcurses.textpad— Виджет ввода текста для программ cursescurses.ascii— Утилиты для символов ASCIIcurses.panel— Расширение со стеком панелей для cursesplatform— Доступ к идентификационным данным базовой платформыerrno— Стандартные системные символы errnoctypes— Библиотека внешних функций для Python
-
Параллельное выполнение
threading— Параллелизм на основе потоковmultiprocessing— Параллелизм на основе процессовmultiprocessing.shared_memory— Разделяемая память для прямого доступа из разных процессов- Пакет
concurrent concurrent.futures— Запуск параллельных задачsubprocess— Управление подпроцессамиsched— Планировщик событийqueue— Класс синхронизированной очередиcontextvars— Переменные контекста_thread— Низкоуровневый API для работы с потоками
-
Сетевое взаимодействие и межпроцессное взаимодействие
asyncio— Асинхронный ввод-выводsocket— Низкоуровневый сетевой интерфейсssl— Обёртка TLS/SSL для объектов сокетовselect— Ожидание завершения операций ввода-выводаselectors— Мультиплексирование ввода-вывода высокого уровняsignal— Назначение обработчиков асинхронных событийmmap— Поддержка файлов, отображённых в память
-
Обработка данных Интернета
email— Пакет для работы с электронной почтой и MIMEjson— Кодировщик и декодировщик JSONmailbox— Работа с почтовыми ящиками в различных форматахmimetypes— Сопоставление имён файлов с типами MIMEbase64— Кодирование данных Base16, Base32, Base64 и Base85binascii— Преобразование двоичных данных в ASCII и обратноquopri— Кодирование и декодирование данных MIME quoted-printable
-
Средства обработки структурированной разметки
html— Поддержка языка разметки гипертекстаhtml.parser— Простой анализатор HTML и XHTMLhtml.entities— Определения общих сущностей HTML- Модули обработки XML
xml.etree.ElementTree— API XML ElementTreexml.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 4122socketserver— Инфраструктура для сетевых серверовhttp.server— Серверы HTTPhttp.cookies— Управление состоянием HTTPhttp.cookiejar— Работа с cookie для клиентов HTTPxmlrpc— Модули сервера и клиента 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— Тематические виджеты Tktkinter.tix— Виджеты-расширения для Tk- IDLE — редактор и оболочка Python
-
Средства разработки
typing— Поддержка подсказок типовpydoc— Генератор документации и система интерактивной справки- Режим разработки Python
doctest— Тестирование интерактивных примеров Pythonunittest— Инфраструктура модульного тестированияunittest.mock— Библиотека имитационных объектовunittest.mock— начало работы- 2to3 — автоматический перевод кода с Python 2 на Python 3
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__— определения инструкций futuregc— интерфейс сборщика мусораinspect— анализ активных объектов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
posix— наиболее распространённые системные вызовы POSIXpwd— база данных паролейgrp— база данных группtermios— управление tty в стиле POSIXtty— функции управления терминаломpty— утилиты псевдотерминалаfcntl— системные вызовыfcntlиioctlresource— сведения об использовании ресурсовsyslog— процедуры библиотеки syslog в Unix
- Интерфейс командной строки (CLI) модулей
-
Устаревшие модули
aifc— чтение и запись файлов AIFF и AIFCaudioop— обработка необработанных аудиоданныхcgi— поддержка Common Gateway Interfacecgitb— диспетчер трассировок стека для CGI-скриптовchunk— чтение данных, разбитых на блоки IFFcrypt— функция проверки паролей Uniximghdr— определение типа изображенияmailcap— обработка файлов Mailcapmsilib— чтение и запись файлов Microsoft Installernis— интерфейс к NIS компании Sun (Yellow Pages)nntplib— клиент протокола NNTPoptparse— анализатор параметров командной строкиossaudiodev— доступ к аудиоустройствам, совместимым с OSSpipes— интерфейс к конвейерам оболочкиsndhdr— определение типа звукового файлаspwd— база данных теневых паролейsunau— чтение и запись файлов Sun AUtelnetlib— клиент Telnetuu— кодирование и декодирование файлов uuencodexdrlib— кодирование и декодирование данных XDR
- Удалённые модули
- Вопросы безопасности
© 2001–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.12/library/index.html