Стандартная библиотека 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 - Типы менеджеров контекста
- Типы аннотаций типов — Generic Alias, Union
- Другие встроенные типы
- Специальные атрибуты
- Предельные длины преобразования целых чисел в строку
- Встроенные исключения
-
Сервисы обработки текста
string— Общие операции со строкамиre— Операции с регулярными выражениямиdifflib— Помощники для вычисления различийtextwrap— Обёртывание и заполнение текстаunicodedata— База данных Юникодаstringprep— Подготовка строк для Интернета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— Утилиты для ASCII-символовcurses.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— Преобразование между двоичным и ASCIIquopri— Кодирование и декодирование данных MIME в формате quoted-printable
-
Инструменты обработки структурированной разметки
html— Поддержка языка разметки гипертекста (HTML)html.parser— Простой парсер HTML и XHTMLhtml.entities— Определения общих сущностей HTML- Обработка XML модулей
xml.etree.ElementTree— API ElementTree для XMLxml.dom— API Document Object Modelxml.dom.minidom— Минимальная реализация DOMxml.dom.pulldom— Поддержка создания частичных деревьев DOMxml.sax— Поддержка SAX2 парсеровxml.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— HTTP-модулиhttp.client— HTTP-клиент протоколаftplib— FTP-клиент протоколаpoplib— POP3-клиент протоколаimaplib— IMAP4-клиент протоколаsmtplib— SMTP-клиент протоколаuuid— Объекты UUID в соответствии с RFC 4122socketserver— Фреймворк для сетевых серверовhttp.server— HTTP-серверыhttp.cookies— Управление состоянием HTTPhttp.cookiejar— Обработка файлов cookie для HTTP-клиентовxmlrpc— Модули XMLRPC-сервера и клиентаxmlrpc.client— Доступ к клиентам XML-RPCxmlrpc.server— Базовые XML-RPC-серверыipaddress— Библиотека для работы с IPv4/IPv6
- Мультимедийные сервисы
- Локализация
- Фреймворки программ
-
Графические пользовательские интерфейсы с Tk
tkinter— Python-интерфейс к Tcl/Tktkinter.colorchooser— Диалог выбора цветаtkinter.font— Обёртка шрифтов Tkinter- Диалоги Tkinter
tkinter.messagebox— Всплывающие окна сообщений Tkintertkinter.scrolledtext— Виджет прокручиваемого текстаtkinter.dnd— Поддержка перетаскиванияtkinter.ttk— Тематические виджеты Tktkinter.tix— Дополнительные виджеты Tk- IDLE
-
Средства разработки
typing— Поддержка типовpydoc— Генератор документации и система справки онлайн- Режим разработки Python
doctest— Тестирование интерактивных примеров Pythonunittest— Фреймворк для модульных тестовunittest.mock— Библиотека имитационных объектовunittest.mock— Начало работы- 2to3 — Автоматическое преобразование кода Python 2 в 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— Утилиты для тестов предупреждений
- Отладка и профилирование
- Упаковщик и распространение программного обеспечения
-
Службы выполнения Python
sys— Параметры и функции, специфичные для системыsys.monitoring— Мониторинг событий выполненияsysconfig— Предоставление доступа к конфигурационной информации Pythonbuiltins— Встроенные объекты__main__— Среда кода верхнего уровняwarnings— Управление предупреждениямиdataclasses— Классы данныхcontextlib— Утилиты для контекстов с инструкциямиwithabc— Абстрактные базовые классыatexit— Обработчики завершенияtraceback— Вывод или получение трассировки стека__future__— Определения будущих инструкцийgc— Интерфейс сборщика мусораinspect— Инспектирование живых объектовsite— Хук конфигурации, специфичный для сайта
- Пользовательские интерпретаторы Python
-
Импортирование модулей
zipimport— Импорт модулей из архивов Zippkgutil— Утилита расширения пакетовmodulefinder— Поиск модулей, используемых скриптомrunpy— Поиск и выполнение модулей Pythonimportlib— Реализацияimportimportlib.resources— Чтение, открытие и доступ к ресурсам пакетовimportlib.resources.abc— Абстрактные базовые классы для ресурсовimportlib.metadata— Доступ к метаданным пакетов- Инициализация пути поиска модуля
sys.path
-
Службы языка Python
ast— Абстрактные синтаксические деревьяsymtable— Доступ к таблицам символов компилятораtoken— Константы, используемые с деревьями разбора Pythonkeyword— Проверка на ключевые слова Pythontokenize— Токенизатор для исходного кода Pythontabnanny— Обнаружение неоднозначного отступаpyclbr— Поддержка браузера модулей Pythonpy_compile— Компиляция файлов исходного кода Pythoncompileall— Байткодовая компиляция библиотек Pythondis— Диссасемблер для байткода Pythonpickletools— Инструменты для разработчиков pickle
- Службы, специфичные для MS Windows
-
Службы, специфичные для Unix
posix— Наиболее распространённые системные вызовы POSIXpwd— База данных паролейgrp— База данных группtermios— Управление терминалом в стиле POSIXtty— Функции управления терминаломpty— Утилиты псевдотерминаловfcntl— Системные вызовыfcntlиioctlresource— Информация об использовании ресурсовsyslog— Функции библиотеки syslog Unix
- Модули командной строки (CLI)
-
Устаревшие модули
aifc— Чтение и запись файлов AIFF и AIFCaudioop— Обработка необработанных аудиоданныхcgi— Поддержка Common Gateway Interfacecgitb— Менеджер трассировки для скриптов CGIchunk— Чтение данных IFF с фрагментамиcrypt— Функция проверки паролей Uniximghdr— Определение типа изображенияmailcap— Обработка файлов mailcapmsilib— Чтение и запись файлов Microsoft Installernis— Интерфейс к NIS (Yellow Pages) Sunnntplib— Клиент протокола NNTPoptparse— Парсер командной строкиossaudiodev— Доступ к аудиоустройствам, совместимым с OSSpipes— Интерфейс к конвейрам оболочкиsndhdr— Определение типа файла звукаspwd— База данных паролей shadowsunau— Чтение и запись файлов Sun AUtelnetlib— Клиент Telnetuu— Кодирование и декодирование файлов uuencodexdrlib— Кодирование и декодирование данных XDR
- Рекомендации по безопасности
© 2001–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.12/library/index.html