Стандартная_библиотекаPython
August 16, 2020

Стандартная библиотека Python

Хотя  «Руководство Python»  описывает точный синтаксис и семантику языка Python, это справочное руководство по библиотеке описывает стандартную библиотеку, которая распространяется вместе с Python. Он также описывает некоторые из дополнительных компонентов, которые обычно включены в дистрибутивы Python.

Стандартная библиотека Python очень обширна и предлагает широкий спектр возможностей, о чем свидетельствует длинное оглавление, указанное ниже. Библиотека содержит встроенные модули (написанные на C), которые обеспечивают доступ к функциям системы, таким как файловый ввод-вывод, которые в противном случае были бы недоступны программистам Python, а также модули, написанные на Python, которые предоставляют стандартизированные решения для многих проблем, возникающих в повседневное программирование. Некоторые из этих модулей специально разработаны для поощрения и улучшения переносимости программ Python за счет абстрагирования специфики платформы в платформенно-нейтральные API.

Установщики Python для платформы Windows обычно включают всю стандартную библиотеку, а также часто включают множество дополнительных компонентов. Для Unix-подобных операционных систем Python обычно предоставляется в виде набора пакетов, поэтому для получения некоторых или всех дополнительных компонентов может потребоваться использование инструментов упаковки, поставляемых с операционной системой.

Содержание:

Введение

Примечания по доступности

● Встроенные функции

● Втроенные константы

Константы, добавленные site модулем

● Встроенные типы

Проверка истинности

Булевы операции - and,  or, not

Сравнения

Числовые типы - int,  float, complex

Типы итераторов

Типы последовательностей - list,  tuple, range

Тип текстовой последовательности - str

Двоичная последовательность типов - bytes,  bytearray, memoryview

Типы наборов - set, frozenset

Типы картографии - dict

Типы диспетчера контекста

Другие встроенные типы

Особые атрибуты

● Встроенные исключения

Базовые классы

Конкретные исключения

Предупреждения

Иерархия исключений

● Работа с текстом

string - Общие строковые операции

re - Операции с регулярными выражениями

difflib - Помощники для вычисления дельт

textwrap - Перенос и заполнение текста

unicodedata - База данных Unicode

stringprep - Подготовка Интернет-строки

readline - Интерфейс чтения GNU

rlcompleter - Функция завершения для строки чтения GNU

● Работа с двоичными данными

struct - Интерпретировать байты как упакованные двоичные данные

codecs - Реестр кодеков и базовые классы

● Типы данных

datetime - Основные типы даты и времени

calendar - Общие функции, связанные с календарем

collections - Типы данных контейнера

collections.abc - Абстрактные базовые классы для контейнеров

heapq - Алгоритм очереди кучи

bisect - Алгоритм деления массива пополам

array - Эффективные массивы числовых значений

weakref - Слабые ссылки

types - Создание динамического типа и имена для встроенных типов

copy - Операции мелкого и глубокого копирования

pprint - Данные симпатичного принтера

reprlib- Альтернативная repr()реализация

enum - Поддержка перечислений

● Числовые и математические модули

numbers - Числовые абстрактные базовые классы

math - Математические функции

cmath - Математические функции для комплексных чисел

decimal - Десятичная арифметика с фиксированной и плавающей запятой

fractions - Рациональное число

random - Генерация псевдослучайных чисел

statistics - Функции математической статистики

● Модули функционального программирования

itertools - Функции, создающие итераторы для эффективного цикла

functools - Функции высшего порядка и операции с вызываемыми объектами

operator - Стандартные операторы как функции

● Доступ к файлам и директориям

pathlib - Пути к объектно-ориентированной файловой системе

os.path - Общие манипуляции с путями

fileinput - Перебирать строки из нескольких входных потоков

stat- Интерпретация stat()результатов

filecmp - Сравнение файлов и каталогов

tempfile - Создавать временные файлы и каталоги

glob - Расширение шаблона имени пути в стиле Unix

fnmatch - Сопоставление с образцом имени файла в Unix

linecache - Произвольный доступ к текстовым строкам

shutil - Высокоуровневые файловые операции

● Сохранение данных

pickle - Сериализация объекта Python

copyreg- Зарегистрируйте pickleфункции поддержки

shelve - Постоянство объекта Python

marshal - Внутренняя сериализация объекта Python

dbm - Интерфейсы к «базам данных» Unix

sqlite3 - Интерфейс DB-API 2.0 для баз данных SQLite

● Сжатие и архивирование данных

zlib- Сжатие совместимо с gzip

gzip- Поддержка файлов gzip

bz2- Поддержка сжатия bzip2

lzma - Сжатие с использованием алгоритма LZMA

zipfile - Работа с ZIP архивами

tarfile - Чтение и запись файлов tar-архива

● Форматы файлов

csv - Чтение и запись файлов CSV

configparser - Парсер файла конфигурации

netrc - обработка файлов netrc

xdrlib - Кодировать и декодировать данные XDR

plistlib- Создание и анализ .plistфайлов Mac OS X

● Работа с криптографией

hashlib - Безопасные хэши и дайджесты сообщений

hmac - Ключевое хеширование для аутентификации сообщений

secrets - Создавайте безопасные случайные числа для управления секретами

● Модули для взаимодействия с операционной системой

os - Разные интерфейсы операционной системы

io - Основные инструменты для работы с потоками

time - Доступ по времени и преобразования

argparse - Парсер для параметров командной строки, аргументов и подкоманд

getopt - Парсер в стиле C для параметров командной строки

logging - Средство ведения журнала для Python

logging.config - Конфигурация журнала

logging.handlers - Обработчики журналов

getpass - Портативный ввод пароля

curses - Терминальная обработка дисплеев символьных ячеек

curses.textpad - Виджет ввода текста для программ curses

curses.ascii - Утилиты для символов ASCII

curses.panel - Расширение стека панелей для проклятий

platform - Доступ к идентифицирующим данным базовой платформы

errno - Стандартные системные символы errno

ctypes - Библиотека сторонних функций для Python

● Параллельное выполнение

threading - Потоковый параллелизм

multiprocessing - Параллелизм на основе процессов

multiprocessing.shared_memory - Предоставляет общую память для прямого доступа между процессами

concurrentпакет

concurrent.futures - Запуск параллельных задач

subprocess - Управление подпроцессом

sched - Планировщик мероприятий

queue - Синхронизированный класс очереди

_thread - API низкоуровневой обработки потоков

_dummy_thread- Прямая замена _threadмодуля

dummy_threading- Прямая замена threadingмодуля

contextvars - Переменные контекста

Переменные контекста

Ручное управление контекстом

поддержка asyncio

● Сеть и межпроцессное взаимодействие

asyncio - Асинхронный ввод / вывод

socket - Сетевой интерфейс низкого уровня

ssl - Обертка TLS / SSL для объектов сокета

select - Ожидание завершения ввода / вывода

selectors - Мультиплексирование ввода / вывода высокого уровня

asyncore - Асинхронный обработчик сокетов

asynchat - Обработчик команд / ответов асинхронного сокета

signal - Установить обработчики для асинхронных событий

mmap - Поддержка файлов с отображением памяти

● Работа с данными в интернете

email - Пакет обработки электронной почты и MIME

json - Кодировщик и декодер JSON

mailcap - Обработка файлов Mailcap

mailbox - Управляйте почтовыми ящиками в различных форматах

mimetypes - Сопоставьте имена файлов с типами MIME

base64 - Кодировки данных Base16, Base32, Base64, Base85

binhex - Кодирование и декодирование файлов binhex4

binascii - Преобразование между двоичным кодом и ASCII

quopri - Кодировать и декодировать данные печати в кавычках MIME

uu - Кодировать и декодировать файлы uuencode

● Инструменты обработки структурированной разметки

html - Поддержка языка разметки гипертекста

html.parser - Простой парсер HTML и XHTML

html.entities - Определения общих сущностей HTML

Модули обработки XML

xml.etree.ElementTree - XML ​​API ElementTree

xml.dom - API объектной модели документа

xml.dom.minidom - Минимальная реализация DOM

xml.dom.pulldom - Поддержка построения частичных деревьев DOM

xml.sax - Поддержка парсеров SAX2

xml.sax.handler - Базовые классы для обработчиков SAX

xml.sax.saxutils - Утилиты SAX

xml.sax.xmlreader - Интерфейс для парсеров XML

xml.parsers.expat - Быстрый парсинг XML с помощью Expat

● Интернет-протоколы и поддержка

webbrowser - Удобный контроллер веб-браузера

cgi - Поддержка общего интерфейса шлюза

cgitb - Менеджер трассировки для скриптов CGI

wsgiref - Утилиты WSGI и эталонная реализация

urllib - Модули обработки URL

urllib.request - Расширяемая библиотека для открытия URL-адресов

urllib.response - Классы ответа, используемые urllib

urllib.parse - Разбирать URL-адреса на компоненты

urllib.error - Классы исключений, создаваемые urllib.request

urllib.robotparser - Парсер для robots.txt

http - HTTP-модули

http.client - Клиент протокола HTTP

ftplib - Клиент протокола FTP

poplib - Клиент протокола POP3

imaplib - Клиент протокола IMAP4

nntplib - Клиент протокола NNTP

smtplib - Клиент протокола SMTP

smtpd - SMTP-сервер

telnetlib - Telnet-клиент

uuid- Объекты UUID согласно RFC 4122

socketserver - Фреймворк для сетевых серверов

http.server - HTTP-серверы

http.cookies - Управление состоянием HTTP

http.cookiejar - Обработка файлов cookie для HTTP-клиентов

xmlrpc - Серверные и клиентские модули XMLRPC

xmlrpc.client - клиентский доступ XML-RPC

xmlrpc.server - Базовые серверы XML-RPC

ipaddress - Библиотека управления IPv4 / IPv6

● Работа с мультимедиа

audioop - Манипулировать необработанными аудиоданными

aifc - Чтение и запись файлов AIFF и AIFC

sunau - Чтение и запись файлов Sun AU

wave - Чтение и запись файлов WAV

chunk - Чтение фрагментированных данных IFF

colorsys - Преобразования между цветовыми системами

imghdr - Определить тип изображения

sndhdr - Определить тип звукового файла

ossaudiodev - Доступ к аудиоустройствам, совместимым с OSS

● Язык и локализация

gettext - Услуги многоязычной интернационализации

locale - Услуги интернационализации

● Программные рамки

turtle - Черепаха графика

cmd - Поддержка строчно-ориентированных интерпретаторов команд

shlex - Простой лексический анализ

● Графические пользовательские интерфейсы с Tk

tkinter - Интерфейс Python для Tcl / Tk

tkinter.ttk - Тематические виджеты Tk

tkinter.tix - Расширение виджетов для Tk

tkinter.scrolledtext - Виджет с прокруткой текста

IDLE

Другие пакеты графического интерфейса пользователя

● Инструменты разработки

typing - Поддержка подсказок типа

pydoc - Генератор документации и онлайн-справочная система

doctest - Протестируйте интерактивные примеры Python

unittest - Фреймворк для модульного тестирования

unittest.mock - библиотека макетов объектов

unittest.mock - начиная

2to3 - автоматический перевод кода Python 2 в 3

test - Пакет регрессионных тестов для Python

test.support - Утилиты для набора тестов Python

test.support.script_helper - Утилиты для выполнения тестов Python

● Отладка и профилирование

Таблица событий аудита

bdb - Фреймворк отладчика

faulthandler - Выгрузить трассировку Python

pdb - Отладчик Python

Профилировщики Python

timeit - Измеряйте время выполнения небольших фрагментов кода

trace - Отслеживание или отслеживание выполнения инструкции Python

tracemalloc - Отслеживание распределения памяти

● Упаковка и распространение программного обеспечения

distutils - Сборка и установка модулей Python

ensurepip- Загрузка pipустановщика

venv - Создание виртуальных сред

zipapp - Управление исполняемыми zip-архивами Python

● Службы выполнения Python

sys - Системные параметры и функции

sysconfig - Обеспечить доступ к информации о конфигурации Python

builtins - Встроенные объекты

__main__ - Среда сценариев верхнего уровня

warnings - Контроль предупреждения

dataclasses - Классы данных

contextlib- Утилиты для withконтекстов операторов

abc - Абстрактные базовые классы

atexit - Обработчики выхода

traceback - Распечатать или получить трассировку стека

__future__ - Определения будущих заявлений

gc - Интерфейс сборщика мусора

inspect - Осматривать живые объекты

site - Хук конфигурации для конкретного сайта

● Пользовательские интерпретаторы Python

code - Базовые классы переводчика

codeop - Скомпилировать код Python

● Импорт модулей

zipimport - Импорт модулей из Zip архивов

pkgutil - Утилита расширения пакета

modulefinder - Найти модули, используемые скриптом

runpy - Поиск и выполнение модулей Python

importlib - Реализация import

Использование importlib.metadata

● Языковые службы Python

parser - Доступ к деревьям синтаксического анализа Python

ast - Абстрактные синтаксические деревья

symtable - Доступ к таблицам символов компилятора

symbol - Константы, используемые с деревьями синтаксического анализа Python

token - Константы, используемые с деревьями синтаксического анализа Python

keyword - Тестирование ключевых слов Python

tokenize - Токенизатор для исходного кода Python

tabnanny - Обнаружение неоднозначного отступа

pyclbr - Поддержка браузера модуля Python

py_compile - Скомпилировать исходные файлы Python

compileall - Библиотеки Python с байтовой компиляцией

dis - Дизассемблер для байт-кода Python

pickletools - Инструменты для разработчиков рассола

● Разные услуги

formatter - Общее форматирование вывода

● Специальные службы MS Windows

msilib - Чтение и запись файлов установщика Microsoft

msvcrt - Полезные подпрограммы из среды выполнения MS VC ++

winreg - Доступ к реестру Windows

winsound - Звуковой интерфейс для Windows

● Специальные службы Unix

posix - Наиболее распространенные системные вызовы POSIX

pwd - База паролей

spwd - База данных теневых паролей

grp - База данных группы

crypt - Функция проверки паролей Unix

termios - Управление tty в стиле POSIX

tty - Функции управления терминалом

pty - Псевдотерминальные утилиты

fcntl- В fcntlи ioctlсистемные вызовы

pipes - Интерфейс с оболочкой трубопроводов

resource - Информация об использовании ресурсов

nis - Интерфейс к Sun's NIS (Желтые страницы)

syslog - Подпрограммы библиотеки системного журнала Unix

● Замененные модули

optparse - Парсер для параметров командной строки

imp- Доступ к внутренним компонентам импорта

● Недокументированные модули

Специфичные для платформы модули

Заключение

Пост создан для тг-канала @coolcoders