Стандартная библиотека Python¶
В то время как Справочник по языку Python описывает точный синтаксис и семантику языка Python, это справочное руководство по библиотеке описывает стандартную библиотеку, которая распространяется вместе с Python. В нем также описаны некоторые дополнительные компоненты, которые обычно включаются в дистрибутивы Python.
Стандартная библиотека Python очень обширна и предлагает широкий спектр возможностей, о чем свидетельствует длинное оглавление, приведенное ниже. Библиотека содержит встроенные модули (написанные на языке C), которые обеспечивают доступ к системным функциям, таким как файловый ввод-вывод, которые иначе были бы недоступны программистам Python, а также модули, написанные на языке Python, которые обеспечивают стандартизированные решения для многих проблем, возникающих в повседневном программировании. Некоторые из этих модулей явно предназначены для поощрения и улучшения переносимости программ на Python, абстрагируясь от специфики платформы в нейтральные для платформы API.
Установщики Python для платформы Windows обычно включают всю стандартную библиотеку, а также множество дополнительных компонентов. Для Unix-подобных операционных систем Python обычно поставляется в виде набора пакетов, поэтому для получения некоторых или всех дополнительных компонентов может потребоваться использование средств упаковки, поставляемых с операционной системой.
В дополнение к стандартной библиотеке существует растущая коллекция из нескольких тысяч компонентов (от отдельных программ и модулей до пакетов и целых фреймворков для разработки приложений), доступных с сайта Python Package Index.
- Введение
- Встроенные функции
- Встроенные константы
- Встроенные типы
- Проверка истинности ценности
- Булевы операции —
and
,or
,not
- Сравнения
- Числовые типы —
int
,float
,complex
- Типы итераторов
- Типы последовательностей —
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
— Парсер в стиле C для опций командной строкиlogging
— Средства протоколирования для 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, Base85binhex
— Кодирование и декодирование файлов binhex4binascii
— Преобразование между двоичным кодом и ASCIIquopri
— Кодирование и декодирование данных MIME с кавычками для печати
- Инструменты обработки структурированной разметки
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
— Модули обработки URL-адресовurllib.request
— Расширяемая библиотека для открытия URL-адресовurllib.response
— Классы ответов, используемые urlliburllib.parse
— Разбор URL на компонентыurllib.error
— Классы исключений, поднимаемые urllib.requesturllib.robotparser
— Парсер для robots.txthttp
— HTTP модулиhttp.client
— Клиент протокола HTTPftplib
— Клиент протокола FTPpoplib
— Клиент протокола POP3imaplib
— Клиент протокола IMAP4smtplib
— Клиент протокола SMTPuuid
— UUID объектов в соответствии с RFC 4122socketserver
— Фреймворк для сетевых серверов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 тематические виджетыtkinter.tix
— Виджеты расширения для Tk- IDLE
- Инструменты разработки
typing
— Поддержка подсказок типовpydoc
— Генератор документации и система интерактивной помощи- Режим разработки Python
- Эффекты режима разработки Python
- Пример ResourceWarning
- Пример ошибки плохого дескриптора файла
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
— Утилиты для os-тестовtest.support.import_helper
— Утилиты для тестирования импортаtest.support.warnings_helper
— Утилиты для проверки предупреждений
- Отладка и профилирование
- Таблица событий аудита
bdb
— Рамка отладчикаfaulthandler
— Выгрузка трассировки Pythonpdb
— Отладчик Python- Профилировщики Python
timeit
— Измерьте время выполнения небольших фрагментов кодаtrace
— Трассировка или отслеживание выполнения оператора Pythontracemalloc
— Отслеживание выделения памяти
- Упаковка и распространение программного обеспечения
- Службы выполнения Python
sys
— Параметры и функции, специфичные для системыsysconfig
— Предоставление доступа к информации о конфигурации Pythonbuiltins
— Встроенные объекты__main__
— Среда кода верхнего уровняwarnings
— Контроль предупрежденияdataclasses
— Классы данныхcontextlib
— Утилиты дляwith
- контекстов утвержденийabc
— Абстрактные базовые классыatexit
— Обработчики выхода из системыtraceback
— Печать или получение обратного хода стека__future__
— Будущие определения утвержденийgc
— Интерфейс сборщика мусораinspect
— Осмотрите живые объектыsite
— Конфигурационный крючок для конкретного объекта
- Пользовательские интерпретаторы Python
- Импорт модулей
- Услуги по изучению языка 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
иioctl
resource
— Информация об использовании ресурсовsyslog
— Процедуры библиотеки Unix syslog
- Замененные модули
aifc
— Чтение и запись файлов AIFF и AIFCasynchat
— Обработчик команд/ответов асинхронного сокетаasyncore
— Обработчик асинхронных сокетовaudioop
— Манипулирование необработанными аудиоданнымиcgi
— Поддержка интерфейса общего шлюзаcgitb
— Менеджер трассировок для CGI-скриптовchunk
— Чтение данных, разбитых на части IFFcrypt
— Функция для проверки паролей Uniximghdr
— Определить тип изображенияimp
— Доступ к внутренним компонентам importmailcap
— Работа с файлами Mailcapmsilib
— Чтение и запись файлов Microsoft Installernis
— Интерфейс к Sun’s NIS (Желтые страницы)nntplib
— Клиент протокола NNTPoptparse
— Парсер для опций командной строкиossaudiodev
— Доступ к OSS-совместимым аудиоустройствамpipes
— Интерфейс для конвейеров оболочкиsmtpd
— SMTP-серверsndhdr
— Определите тип звукового файлаspwd
— Теневая база данных паролейsunau
— Чтение и запись файлов Sun AUtelnetlib
— Клиент Telnetuu
— Кодирование и декодирование файлов uuencodexdrlib
— Кодирование и декодирование данных XDR
- Соображения безопасности