Стандартная библиотека Python¶The Python Standard Library
В то время как Справочное руководство по языку Python описывает точный синтаксис и семантику языка Python, данное справочное руководство по библиотеке описывает стандартную библиотеку, распространяемую вместе с Python. В нём также описываются некоторые дополнительные компоненты, которые обычно включаются в дистрибутивы Python.
Стандартная библиотека Python очень обширна и предлагает широкий спектр возможностей, о чём свидетельствует длинное оглавление, приведённое ниже. Библиотека содержит встроенные модули (написанные на C), которые предоставляют доступ к системным функциям, таким как файловый ввод-вывод, которые в противном случае были бы недоступны программистам на Python, а также модули, написанные на Python, предоставляющие стандартизированные решения многих задач, возникающих в повседневном программировании. Некоторые из этих модулей специально спроектированы для стимулирования и повышения переносимости программ на Python за счёт абстрагирования платформенно-зависимых деталей в платформенно-нейтральные API.
Установщики Python для платформы Windows обычно включают всю стандартную библиотеку, а также часто содержат множество дополнительных компонентов. Для Unix-подобных операционных систем Python обычно поставляется в виде набора пакетов, поэтому может потребоваться использовать инструменты управления пакетами, предоставляемые операционной системой, для получения некоторых или всех дополнительных компонентов.
В дополнение к стандартной библиотеке существует растущая коллекция из нескольких тысяч компонентов (от отдельных программ и модулей до пакетов и целых фреймворков для разработки приложений), доступная в Python Package Index.
- ВведениеIntroduction
- Встроенные функцииBuilt-in Functions
- Встроенные константыBuilt-in Constants
- Встроенные типыBuilt-in Types
- Проверка истинностиTruth Value Testing
- Логические операции –
and,or,notBoolean Operations – and, or, not - СравненияComparisons
- Числовые типы –
int,float,complexNumeric Types – int, float, complex - Типы итераторовIterator Types
- Типы последовательностей –
list,tuple,rangeSequence Types – list, tuple, range - Тип текстовых последовательностей –
strText Sequence Type – str - Типы двоичных последовательностей –
bytes,bytearray,memoryviewBinary Sequence Types – bytes, bytearray, memoryview - Типы множеств –
set,frozensetSet Types – set, frozenset - Типы отображений –
dictMapping Types – dict - Типы контекстных менеджеровContext Manager Types
- Прочие встроенные типыOther Built-in Types
- Специальные атрибутыSpecial Attributes
- Ограничение длины преобразования целого числа в строкуInteger string conversion length limitation
- Встроенные исключенияBuilt-in Exceptions
- Службы обработки текстаText Processing Services
string– Общие операции со строкамиstring – Common string operationsre– Операции с регулярными выражениямиre – Regular expression operationsdifflib– Вспомогательные функции для вычисления разностейdifflib – Helpers for computing deltastextwrap– Перенос и заполнение текстаtextwrap – Text wrapping and fillingunicodedata– База данных Unicodeunicodedata – Unicode Databasestringprep– Подготовка строк для интернетаstringprep – Internet String Preparationreadline– Интерфейс GNU readlinereadline – GNU readline interfacerlcompleter– Функция автодополнения для GNU readlinerlcompleter – Completion function for GNU readline
- Службы двоичных данныхBinary Data Services
- Типы данныхData Types
datetime– базовые типы даты и времениdatetime – Basic date and time typescalendar– общие функции для работы с календарёмcalendar – General calendar-related functionscollections– контейнерные типы данныхcollections – Container datatypescollections.abc– абстрактные базовые классы для контейнеровcollections.abc – Abstract Base Classes for Containersheapq– алгоритм кучи (очередь с приоритетом)heapq – Heap queue algorithmbisect– алгоритм бисекции массиваbisect – Array bisection algorithmarray– эффективные массивы числовых значенийarray – Efficient arrays of numeric valuesweakref– слабые ссылкиweakref – Weak referencestypes– динамическое создание типов и имена для встроенных типовtypes – Dynamic type creation and names for built-in typescopy– операции поверхностного и глубокого копированияcopy – Shallow and deep copy operationspprint– форматированный вывод данныхpprint – Data pretty printerreprlib– альтернативнаяrepr()реализацияreprlib – Alternate repr() implementationenum– поддержка перечисленийenum – Support for enumerations
- Числовые и математические модулиNumeric and Mathematical Modules
numbers– Числовые абстрактные базовые классыnumbers – Numeric abstract base classesmath– Математические функцииmath – Mathematical functionscmath– Математические функции для комплексных чиселcmath – Mathematical functions for complex numbersdecimal– Decimal: арифметика с фиксированной и плавающей точкойdecimal – Decimal fixed point and floating point arithmeticfractions– Рациональные числаfractions – Rational numbersrandom– Генерация псевдослучайных чиселrandom – Generate pseudo-random numbersstatistics– Функции математической статистикиstatistics – Mathematical statistics functions
- Модули функционального программированияFunctional Programming Modules
itertools– Функции, создающие итераторы для эффективного циклического обходаitertools – Functions creating iterators for efficient loopingfunctools– Функции высшего порядка и операции над вызываемыми объектамиfunctools – Higher-order functions and operations on callable objectsoperator– Стандартные операторы в виде функцийoperator – Standard operators as functions
- Доступ к файлам и каталогамFile and Directory Access
pathlib– Объектно-ориентированные пути файловой системыpathlib – Object-oriented filesystem pathsos.path– Основные операции с путямиos.path – Common pathname manipulationsfileinput– Итерация по строкам из нескольких входных потоков данныхfileinput – Iterate over lines from multiple input streamsstat– Интерпретация результатовstat()stat – Interpreting stat() resultsfilecmp– Сравнение файлов и каталоговfilecmp – File and Directory Comparisonstempfile– Создание временных файлов и каталоговtempfile – Generate temporary files and directoriesglob– Развертывание шаблонов путей в стиле Unixglob – Unix style pathname pattern expansionfnmatch– Сопоставление имен файлов с шаблонами Unixfnmatch – Unix filename pattern matchinglinecache– Произвольный доступ к строкам текстаlinecache – Random access to text linesshutil– Высокоуровневые операции с файламиshutil – High-level file operations
- Постоянное хранение данныхData Persistence
pickle– Сериализация объектов Pythonpickle – Python object serializationcopyreg– Регистрация вспомогательных функцийpicklecopyreg – Register pickle support functionsshelve– Персистентность объектов Pythonshelve – Python object persistencemarshal– Внутренняя сериализация объектов Pythonmarshal – Internal Python object serializationdbm– Интерфейсы к Unix-«базам данных»dbm – Interfaces to Unix “databases”sqlite3– Интерфейс DB-API 2.0 для баз данных SQLitesqlite3 – DB-API 2.0 interface for SQLite databases
- Сжатие и архивирование данныхData Compression and Archiving
zlib– сжатие, совместимое с gzipzlib – Compression compatible with gzipgzip– поддержка файлов gzipgzip – Support for gzip filesbz2– поддержка сжатия bzip2bz2 – Support for bzip2 compressionlzma– сжатие с использованием алгоритма LZMAlzma – Compression using the LZMA algorithmzipfile– работа с ZIP-архивамиzipfile – Work with ZIP archivestarfile– чтение и запись tar-архивовtarfile – Read and write tar archive files
- Форматы файловFile Formats
csv– чтение и запись CSV-файловcsv – CSV File Reading and Writingconfigparser– Парсер конфигурационных файловconfigparser – Configuration file parsernetrc– Обработка netrc-файловnetrc – netrc file processingxdrlib– Кодирование и декодирование данных XDRxdrlib – Encode and decode XDR dataplistlib– Генерировать и разбирать файлы.plistMac OS Xplistlib – Generate and parse Mac OS X .plist files
- Криптографические службыCryptographic Services
hashlib– Безопасные хеши и дайджесты сообщенийhashlib – Secure hashes and message digestshmac– хеширование с ключом для аутентификации сообщенийhmac – Keyed-Hashing for Message Authenticationsecrets– генерация защищённых случайных чисел для управления секретамиsecrets – Generate secure random numbers for managing secrets
- Универсальные службы операционной системыGeneric Operating System Services
os– различные интерфейсы операционной системыos – Miscellaneous operating system interfacesio– Основные инструменты для работы с потоками данныхio – Core tools for working with streamstime– Доступ ко времени и преобразованияtime – Time access and conversionsargparse– Парсер параметров командной строки, аргументов и подкомандargparse – Parser for command-line options, arguments and sub-commandsgetopt– Парсер параметров командной строки в стиле Cgetopt – C-style parser for command line optionslogging– Средство журналирования для Pythonlogging – Logging facility for Pythonlogging.config– Конфигурация логированияlogging.config – Logging configurationlogging.handlers– Обработчики логированияlogging.handlers – Logging handlersgetpass– Переносимый ввод пароляgetpass – Portable password inputcurses– Управление терминалом для символьных дисплеевcurses – Terminal handling for character-cell displayscurses.textpad– виджет ввода текста для программ cursescurses.textpad – Text input widget for curses programscurses.ascii– утилиты для работы с ASCII-символамиcurses.ascii – Utilities for ASCII characterscurses.panel– расширение стека панелей для cursescurses.panel – A panel stack extension for cursesplatform– Доступ к идентифицирующим данным базовой платформыplatform – Access to underlying platform’s identifying dataerrno– Стандартные системные символы errnoerrno – Standard errno system symbolsctypes– Библиотека внешних функций для Pythonctypes – A foreign function library for Python
- Параллельное выполнениеConcurrent Execution
threading– параллелизм на основе потоковthreading – Thread-based parallelismmultiprocessing– параллелизм на основе процессовmultiprocessing – Process-based parallelismmultiprocessing.shared_memory– Предоставляет разделяемую память для прямого доступа между процессамиmultiprocessing.shared_memory – Provides shared memory for direct access across processes- Пакет
concurrentThe concurrent package concurrent.futures– Запуск параллельных задачconcurrent.futures – Launching parallel taskssubprocess– Управление подпроцессамиsubprocess – Subprocess managementsched– планировщик событийsched – Event schedulerqueue– класс синхронизированной очередиqueue – A synchronized queue classcontextvars– контекстные переменныеcontextvars – Context Variables_thread– низкоуровневый API потоков_thread – Low-level threading API_dummy_thread– прямая замена модуля_thread_dummy_thread – Drop-in replacement for the _thread moduledummy_threading– прямая замена модуляthreadingdummy_threading – Drop-in replacement for the threading module
- Сеть и межпроцессное взаимодействиеNetworking and Interprocess Communication
asyncio– асинхронный ввод-выводasyncio – Asynchronous I/Osocket– низкоуровневый сетевой интерфейсsocket – Low-level networking interfacessl– обёртка TLS/SSL для объектов сокетовssl – TLS/SSL wrapper for socket objectsselect– Ожидание завершения ввода-выводаselect – Waiting for I/O completionselectors– Высокоуровневое мультиплексирование ввода-выводаselectors – High-level I/O multiplexingasyncore– Асинхронный обработчик сокетовasyncore – Asynchronous socket handlerasynchat– Асинхронный обработчик команд/ответов через сокетыasynchat – Asynchronous socket command/response handlersignal– Установка обработчиков для асинхронных событийsignal – Set handlers for asynchronous eventsmmap– Поддержка файлов, отображаемых в памятьmmap – Memory-mapped file support
- Обработка интернет-данныхInternet Data Handling
email– Пакет для работы с email и MIMEemail – An email and MIME handling packagejson– кодировщик и декодировщик JSONjson – JSON encoder and decodermailcap– Обработка файлов Mailcapmailcap – Mailcap file handlingmailbox– работа с почтовыми ящиками в различных форматахmailbox – Manipulate mailboxes in various formatsmimetypes– сопоставление имён файлов с MIME-типамиmimetypes – Map filenames to MIME typesbase64– кодирование данных Base16, Base32, Base64, Base85base64 – Base16, Base32, Base64, Base85 Data Encodingsbinhex– Кодирование и декодирование файлов binhex4binhex – Encode and decode binhex4 filesbinascii– Преобразование между двоичными данными и ASCIIbinascii – Convert between binary and ASCIIquopri– Кодирование и декодирование MIME quoted-printable данныхquopri – Encode and decode MIME quoted-printable datauu– Кодирование и декодирование файлов uuencodeuu – Encode and decode uuencode files
- Инструменты обработки структурированной разметкиStructured Markup Processing Tools
html– Поддержка языка гипертекстовой разметкиhtml – HyperText Markup Language supporthtml.parser– Простой парсер HTML и XHTMLhtml.parser – Simple HTML and XHTML parserhtml.entities– Определения общих сущностей HTMLhtml.entities – Definitions of HTML general entities- Модули обработки XMLXML Processing Modules
xml.etree.ElementTree– XML API ElementTreexml.etree.ElementTree – The ElementTree XML APIxml.dom– API объектной модели документа (DOM)xml.dom – The Document Object Model APIxml.dom.minidom– Минимальная реализация DOMxml.dom.minidom – Minimal DOM implementationxml.dom.pulldom– Поддержка построения частичных DOM-деревьевxml.dom.pulldom – Support for building partial DOM treesxml.sax– Поддержка парсеров SAX2xml.sax – Support for SAX2 parsersxml.sax.handler– Базовые классы для обработчиков SAXxml.sax.handler – Base classes for SAX handlersxml.sax.saxutils– Утилиты SAXxml.sax.saxutils – SAX Utilitiesxml.sax.xmlreader– Интерфейс для XML-парсеровxml.sax.xmlreader – Interface for XML parsersxml.parsers.expat– Быстрый разбор XML с помощью Expatxml.parsers.expat – Fast XML parsing using Expat
- Интернет-протоколы и поддержкаInternet Protocols and Support
webbrowser– Удобный контроллер веб-браузераwebbrowser – Convenient Web-browser controllercgi– поддержка Common Gateway Interfacecgi – Common Gateway Interface supportcgitb– менеджер трассировки для CGI-скриптовcgitb – Traceback manager for CGI scriptswsgiref– Утилиты WSGI и эталонная реализацияwsgiref – WSGI Utilities and Reference Implementationurllib– Модули обработки URLurllib – URL handling modulesurllib.request– Расширяемая библиотека для открытия URLurllib.request – Extensible library for opening URLsurllib.response– Классы ответов, используемые urlliburllib.response – Response classes used by urlliburllib.parse– Разбор URL на компонентыurllib.parse – Parse URLs into componentsurllib.error– Классы исключений, вызываемые urllib.requesturllib.error – Exception classes raised by urllib.requesturllib.robotparser– Парсер для robots.txturllib.robotparser – Parser for robots.txthttp– Модули HTTPhttp – HTTP moduleshttp.client– Клиент протокола HTTPhttp.client – HTTP protocol clientftplib– клиент протокола FTPftplib – FTP protocol clientpoplib– клиент протокола POP3poplib – POP3 protocol clientimaplib– клиент протокола IMAP4imaplib – IMAP4 protocol clientnntplib– клиент протокола NNTPnntplib – NNTP protocol clientsmtplib– клиент протокола SMTPsmtplib – SMTP protocol clientsmtpd– SMTP-серверsmtpd – SMTP Servertelnetlib– Telnet-клиентtelnetlib – Telnet clientuuid– объекты UUID в соответствии с RFC 4122uuid – UUID objects according to RFC 4122socketserver– фреймворк для сетевых серверовsocketserver – A framework for network servershttp.server– HTTP-серверыhttp.server – HTTP servershttp.cookies– управление состоянием HTTPhttp.cookies – HTTP state managementhttp.cookiejar– Обработка cookie для HTTP-клиентовhttp.cookiejar – Cookie handling for HTTP clientsxmlrpc– Модули сервера и клиента XML-RPCxmlrpc – XMLRPC server and client modulesxmlrpc.client– Доступ клиента XML-RPCxmlrpc.client – XML-RPC client accessxmlrpc.server– Базовые серверы XML-RPCxmlrpc.server – Basic XML-RPC serversipaddress– Библиотека для работы с IPv4/IPv6ipaddress – IPv4/IPv6 manipulation library
- Мультимедийные службыMultimedia Services
audioop– Манипулирование сырыми аудиоданнымиaudioop – Manipulate raw audio dataaifc– Чтение и запись файлов AIFF и AIFCaifc – Read and write AIFF and AIFC filessunau– Чтение и запись файлов Sun AUsunau – Read and write Sun AU fileswave– чтение и запись WAV-файловwave – Read and write WAV fileschunk– чтение данных IFF с блочной структуройchunk – Read IFF chunked datacolorsys– преобразования между цветовыми системамиcolorsys – Conversions between color systemsimghdr– определение типа изображенияimghdr – Determine the type of an imagesndhdr– Определение типа звукового файлаsndhdr – Determine type of sound fileossaudiodev– Доступ к аудиоустройствам, совместимым с OSSossaudiodev – Access to OSS-compatible audio devices
- ИнтернационализацияInternationalization
- Программные фреймворкиProgram Frameworks
- Графические пользовательские интерфейсы с TkGraphical User Interfaces with Tk
tkinter– интерфейс Python к Tcl/Tktkinter – Python interface to Tcl/Tktkinter.ttk– Тематические виджеты Tktkinter.ttk – Tk themed widgetstkinter.tix– Расширяющие виджеты для Tktkinter.tix – Extension widgets for Tktkinter.scrolledtext– Виджет текстовой области с прокруткойtkinter.scrolledtext – Scrolled Text Widget- IDLE
- Другие пакеты графического интерфейса пользователяOther Graphical User Interface Packages
- Инструменты разработкиDevelopment Tools
typing– Поддержка аннотаций типовtyping – Support for type hintspydoc– генератор документации и система интерактивной справкиpydoc – Documentation generator and online help systemdoctest– тестирование интерактивных примеров Pythondoctest – Test interactive Python examplesunittest– фреймворк для модульного тестированияunittest – Unit testing frameworkunittest.mock– библиотека mock-объектовunittest.mock – mock object libraryunittest.mock– начало работыunittest.mock – getting started- 2to3 – автоматический перенос кода с Python 2 на Python 32to3 - Automated Python 2 to 3 code translation
test– Пакет регрессионных тестов для Pythontest – Regression tests package for Pythontest.support– Утилиты для набора тестов Pythontest.support – Utilities for the Python test suitetest.support.script_helper– Утилиты для тестов выполнения Pythontest.support.script_helper – Utilities for the Python execution tests
- Отладка и профилированиеDebugging and Profiling
- Таблица событий аудитаAudit events table
bdb– фреймворк отладчикаbdb – Debugger frameworkfaulthandler– дамп трассировки Pythonfaulthandler – Dump the Python tracebackpdb– отладчик Pythonpdb – The Python Debugger- Профилировщики PythonThe Python Profilers
timeit– Измерение времени выполнения небольших фрагментов кодаtimeit – Measure execution time of small code snippetstrace– Трассировка или отслеживание выполнения операторов Pythontrace – Trace or track Python statement executiontracemalloc– Трассировка выделений памятиtracemalloc – Trace memory allocations
- Упаковка и распространение ПОSoftware Packaging and Distribution
distutils– Сборка и установка модулей Pythondistutils – Building and installing Python modulesensurepip– Начальная загрузка установщикаpipensurepip – Bootstrapping the pip installervenv– Создание виртуальных окруженийvenv – Creation of virtual environmentszipapp– Управление исполняемыми Python zip-архивамиzipapp – Manage executable Python zip archives
- Службы выполнения PythonPython Runtime Services
sys– Системно-зависимые параметры и функцииsys – System-specific parameters and functionssysconfig– Предоставление доступа к конфигурационной информации Pythonsysconfig – Provide access to Python’s configuration informationbuiltins– Встроенные объектыbuiltins – Built-in objects__main__– среда сценария верхнего уровня__main__ – Top-level script environmentwarnings– Управление предупреждениямиwarnings – Warning controldataclasses– Классы данныхdataclasses – Data Classescontextlib– Утилиты для контекстов оператораwithcontextlib – Utilities for with-statement contextsabc– Абстрактные базовые классыabc – Abstract Base Classesatexit– Обработчики выходаatexit – Exit handlerstraceback– Печать или получение трассировки стекаtraceback – Print or retrieve a stack traceback__future__– Определения операторов future__future__ – Future statement definitionsgc– Интерфейс сборщика мусораgc – Garbage Collector interfaceinspect– Инспекция живых объектовinspect – Inspect live objectssite– Перехватчик конфигурации для конкретного сайтаsite – Site-specific configuration hook
- Пользовательские интерпретаторы PythonCustom Python Interpreters
- Импорт модулейImporting Modules
zipimport– Импорт модулей из Zip-архивовzipimport – Import modules from Zip archivespkgutil– Утилита расширения пакетовpkgutil – Package extension utilitymodulefinder– Поиск модулей, используемых скриптомmodulefinder – Find modules used by a scriptrunpy– Поиск и выполнение модулей Pythonrunpy – Locating and executing Python modulesimportlib– Реализацияimportimportlib – The implementation of import- Использование
importlib.metadataUsing importlib.metadata
- Службы языка PythonPython Language Services
parser– Доступ к деревьям разбора Pythonparser – Access Python parse treesast– Абстрактные синтаксические деревьяast – Abstract Syntax Treessymtable– Доступ к таблицам символов компилятораsymtable – Access to the compiler’s symbol tablessymbol– Константы, используемые с деревьями разбора Pythonsymbol – Constants used with Python parse treestoken– Константы, используемые с деревьями разбора Pythontoken – Constants used with Python parse treeskeyword– Проверка ключевых слов Pythonkeyword – Testing for Python keywordstokenize– Токенизатор исходного кода Pythontokenize – Tokenizer for Python sourcetabnanny– Обнаружение неоднозначных отступовtabnanny – Detection of ambiguous indentationpyclbr– Поддержка обозревателя модулей Pythonpyclbr – Python module browser supportpy_compile– Компиляция исходных файлов Pythonpy_compile – Compile Python source filescompileall– Байт-компиляция библиотек Pythoncompileall – Byte-compile Python librariesdis– Дисассемблер байт-кода Pythondis – Disassembler for Python bytecodepickletools– Инструменты для разработчиков picklepickletools – Tools for pickle developers
- Прочие службыMiscellaneous Services
- Службы, специфичные для MS WindowsMS Windows Specific Services
msilib– Чтение и запись файлов Microsoft Installermsilib – Read and write Microsoft Installer filesmsvcrt– Полезные процедуры из MS VC++ runtimemsvcrt – Useful routines from the MS VC++ runtimewinreg– Доступ к реестру Windowswinreg – Windows registry accesswinsound– Интерфейс воспроизведения звука для Windowswinsound – Sound-playing interface for Windows
- Специфические для Unix службыUnix Specific Services
posix– Наиболее распространённые системные вызовы POSIXposix – The most common POSIX system callspwd– База данных паролейpwd – The password databasespwd– База данных теневых паролейspwd – The shadow password databasegrp– База данных группgrp – The group databasecrypt– функция для проверки паролей Unixcrypt – Function to check Unix passwordstermios– Управление tty в стиле POSIXtermios – POSIX style tty controltty– Функции управления терминаломtty – Terminal control functionspty– Утилиты псевдотерминаловpty – Pseudo-terminal utilitiesfcntl– Системные вызовыfcntlиioctlfcntl – The fcntl and ioctl system callspipes– Интерфейс к конвейерам командной оболочкиpipes – Interface to shell pipelinesresource– Информация об использовании ресурсовresource – Resource usage informationnis– Интерфейс к NIS (Yellow Pages) от Sunnis – Interface to Sun’s NIS (Yellow Pages)syslog– Функции библиотеки syslog Unixsyslog – Unix syslog library routines
- Заменённые модулиSuperseded Modules
- Недокументированные модулиUndocumented Modules