Содержание документации Python
-
Что нового в Python
-
Что нового в Python 3.11
- Краткое содержание — основные моменты выпуска
- Новые возможности
- Новые возможности, связанные с подсказками типов
- Другие изменения языка
- Другие изменения реализации CPython
- Новые модули
- Улучшенные модули
- Оптимизации
- Более быстрый CPython
- Изменения байт-кода CPython
- Устаревшие возможности
- Планируется удалить в Python 3.12
- Удалённые возможности
- Переход на Python 3.11
- Изменения сборки
- Изменения C API
- Важные изменения в 3.11.4
- Важные изменения в 3.11.5
- Важные изменения в 3.11.10
-
Что нового в Python 3.10
- Краткое содержание — основные моменты выпуска
- Новые возможности
- Новые возможности, связанные с подсказками типов
- Другие изменения языка
- Новые модули
-
Улучшенные модули
- asyncio
- argparse
- array
- asynchat, asyncore, smtpd
- base64
- bdb
- bisect
- codecs
- collections.abc
- contextlib
- curses
- dataclasses
- distutils
- doctest
- encodings
- enum
- fileinput
- faulthandler
- gc
- glob
- hashlib
- hmac
- IDLE и idlelib
- importlib.metadata
- inspect
- itertools
- linecache
- os
- os.path
- pathlib
- platform
- pprint
- py_compile
- pyclbr
- shelve
- statistics
- site
- socket
- ssl
- sqlite3
- sys
- _thread
- threading
- traceback
- types
- typing
- unittest
- urllib.parse
- xml
- zipimport
- Оптимизации
- Устаревшие возможности
- Удалённые возможности
- Переход на Python 3.10
- Изменения байт-кода CPython
- Изменения сборки
- Изменения C API
- Важная функция безопасности в 3.10.7
- Важная функция безопасности в 3.10.8
- Важные изменения в 3.10.12
-
Что нового в Python 3.11
-
Что нового в Python 3.9
- Краткое описание — основные моменты выпуска
- Вам следует проверять наличие DeprecationWarning в своём коде
- Новые возможности
- Другие изменения языка
- Новые модули
- Улучшенные модули
- Оптимизации
- Устаревшие возможности
- Удалённые возможности
- Перенос на Python 3.9
- Изменения сборки
- Изменения API C
- Примечательные изменения в Python 3.9.1
- Примечательные изменения в Python 3.9.2
- Примечательные изменения в Python 3.9.3
- Примечательные изменения в Python 3.9.5
- Важное изменение в области безопасности в версии 3.9.14
- Примечательные изменения в версии 3.9.17
-
Что нового в Python 3.8
- Краткое описание — основные моменты выпуска
-
Новые возможности
- Выражения присваивания
- Параметры только позиционного типа
- Параллельный файловый кэш скомпилированных файлов байт-кода
- В отладочной сборке используется та же ABI, что и в релизной
- В f-строках поддерживаются
=самодокументирующиеся выражения и отладка - PEP 578: хуки аудита среды выполнения Python
- PEP 587: конфигурация инициализации Python
- PEP 590: Vectorcall: быстрый протокол вызова для CPython
- Протокол Pickle 5 с буферами данных вне основного потока
- Другие изменения языка
- Новые модули
-
Улучшенные модули
- ast
- asyncio
- builtins
- collections
- cProfile
- csv
- curses
- ctypes
- datetime
- functools
- gc
- gettext
- gzip
- IDLE и idlelib
- inspect
- io
- itertools
- json.tool
- logging
- math
- mmap
- multiprocessing
- os
- os.path
- pathlib
- pickle
- plistlib
- pprint
- py_compile
- shlex
- shutil
- socket
- ssl
- statistics
- sys
- tarfile
- threading
- tokenize
- tkinter
- time
- typing
- unicodedata
- unittest
- venv
- weakref
- xml
- xmlrpc
- Оптимизации
- Изменения сборки и API C
- Устаревшие возможности
- Удаление API и возможностей
- Перенос на Python 3.8
- Примечательные изменения в Python 3.8.1
- Примечательные изменения в Python 3.8.2
- Примечательные изменения в Python 3.8.3
- Примечательные изменения в Python 3.8.8
- Примечательные изменения в Python 3.8.9
- Примечательные изменения в Python 3.8.10
- Примечательные изменения в Python 3.8.10
- Примечательные изменения в Python 3.8.12
- Важное изменение в области безопасности в версии 3.8.14
- Примечательные изменения в версии 3.8.17
-
Что нового в Python 3.9
-
Что нового в Python 3.7
- Краткое описание — основные новшества выпуска
-
Новые возможности
- PEP 563: отложенное вычисление аннотаций
- PEP 538: принудительный выбор устаревшей локали C
- PEP 540: принудительный режим UTF-8 во время выполнения
- PEP 553: встроенная функция
breakpoint() - PEP 539: новый C API для локального хранилища потоков
- PEP 562: настройка доступа к атрибутам модуля
- PEP 564: новые функции времени с наносекундным разрешением
- PEP 565: показ DeprecationWarning в
__main__ - PEP 560: базовая поддержка модуля
typingи обобщённых типов - PEP 552: файлы .pyc на основе хеша
- PEP 545: переводы документации Python
- Режим разработки Python (-X dev)
- Другие изменения языка
- Новые модули
-
Улучшенные модули
- argparse
- asyncio
- binascii
- calendar
- collections
- compileall
- concurrent.futures
- contextlib
- cProfile
- crypt
- datetime
- dbm
- decimal
- dis
- distutils
- enum
- functools
- gc
- hmac
- http.client
- http.server
- idlelib и IDLE
- importlib
- io
- ipaddress
- itertools
- locale
- logging
- math
- mimetypes
- msilib
- multiprocessing
- os
- pathlib
- pdb
- py_compile
- pydoc
- queue
- re
- signal
- socket
- socketserver
- sqlite3
- ssl
- string
- subprocess
- sys
- time
- tkinter
- tracemalloc
- types
- unicodedata
- unittest
- unittest.mock
- urllib.parse
- uu
- uuid
- warnings
- xml
- xml.etree
- xmlrpc.server
- zipapp
- zipfile
- Изменения C API
- Изменения сборки
- Оптимизации
- Другие изменения реализации CPython
- Устаревшее поведение Python
- Устаревшие модули, функции и методы Python
- Устаревшие функции и типы C API
- Прекращение поддержки платформ
- Удаление API и возможностей
- Удаление модулей
- Изменения только для Windows
- Переход на Python 3.7
- Примечательные изменения в Python 3.7.1
- Примечательные изменения в Python 3.7.2
- Примечательные изменения в Python 3.7.6
- Примечательные изменения в Python 3.7.10
- Примечательные изменения в Python 3.7.11
- Примечательная функция безопасности в 3.7.14
-
Что нового в Python 3.7
-
Что нового в Python 3.6
- Краткое описание — основные нововведения выпуска
-
Новые возможности
- PEP 498: Форматированные строковые литералы
- PEP 526: Синтаксис аннотаций переменных
- PEP 515: Подчёркивания в числовых литералах
- PEP 525: Асинхронные генераторы
- PEP 530: Асинхронные включения
- PEP 487: Упрощённая настройка создания классов
- PEP 487: Улучшения протокола дескрипторов
- PEP 519: Добавление протокола путей файловой системы
- PEP 495: Различение локального времени
- PEP 529: Изменение кодировки файловой системы Windows на UTF-8
- PEP 528: Изменение кодировки консоли Windows на UTF-8
- PEP 520: Сохранение порядка определения атрибутов класса
- PEP 468: Сохранение порядка именованных аргументов
- Новая реализация dict
- PEP 523: Добавление API оценки кадров в CPython
- Переменная окружения PYTHONMALLOC
- Поддержка трассировки с помощью DTrace и SystemTap
- Другие изменения языка
- Новые модули
-
Улучшенные модули
- array
- ast
- asyncio
- binascii
- cmath
- collections
- concurrent.futures
- contextlib
- datetime
- decimal
- distutils
- encodings
- enum
- faulthandler
- fileinput
- hashlib
- http.client
- idlelib и IDLE
- importlib
- inspect
- json
- logging
- math
- multiprocessing
- os
- pathlib
- pdb
- pickle
- pickletools
- pydoc
- random
- re
- readline
- rlcompleter
- shlex
- site
- sqlite3
- socket
- socketserver
- ssl
- statistics
- struct
- subprocess
- sys
- telnetlib
- time
- timeit
- tkinter
- traceback
- tracemalloc
- typing
- unicodedata
- unittest.mock
- urllib.request
- urllib.robotparser
- venv
- warnings
- winreg
- winsound
- xmlrpc.client
- zipfile
- zlib
- Оптимизации
- Изменения сборки и C API
- Другие улучшения
- Устаревшие возможности
- Удалено
- Перенос на Python 3.6
- Примечательные изменения в Python 3.6.2
- Примечательные изменения в Python 3.6.4
- Примечательные изменения в Python 3.6.5
- Примечательные изменения в Python 3.6.7
- Примечательные изменения в Python 3.6.10
- Примечательные изменения в Python 3.6.13
- Примечательные изменения в Python 3.6.14
-
Что нового в Python 3.6
-
Что нового в Python 3.5
- Краткое содержание — основные моменты выпуска
-
Новые возможности
- PEP 492 — сопрограммы с синтаксисом async и await
- PEP 465 — специальный инфиксный оператор для умножения матриц
- PEP 448 — дополнительные обобщения распаковки
- PEP 461 — поддержка форматирования с помощью процента для bytes и bytearray
- PEP 484 — подсказки типов
- PEP 471 — функция os.scandir(): улучшенный и более быстрый итератор каталогов
- PEP 475: повтор системных вызовов, завершившихся с EINTR
- PEP 479: изменение обработки StopIteration внутри генераторов
- PEP 485: функция для проверки приблизительного равенства
- PEP 486: поддержка виртуальных окружений в программе запуска Python
- PEP 488: удаление файлов PYO
- PEP 489: многоэтапная инициализация модулей расширений
- Другие изменения языка
- Новые модули
-
Улучшенные модули
- argparse
- asyncio
- bz2
- cgi
- cmath
- code
- collections
- collections.abc
- compileall
- concurrent.futures
- configparser
- contextlib
- csv
- curses
- dbm
- difflib
- distutils
- doctest
- enum
- faulthandler
- functools
- glob
- gzip
- heapq
- http
- http.client
- idlelib и IDLE
- imaplib
- imghdr
- importlib
- inspect
- io
- ipaddress
- json
- linecache
- locale
- logging
- lzma
- math
- multiprocessing
- operator
- os
- pathlib
- pickle
- poplib
- re
- readline
- selectors
- shutil
- signal
- smtpd
- smtplib
- sndhdr
- socket
- ssl
- sqlite3
- subprocess
- sys
- sysconfig
- tarfile
- threading
- time
- timeit
- tkinter
- traceback
- types
- unicodedata
- unittest
- unittest.mock
- urllib
- wsgiref
- xmlrpc
- xml.sax
- zipfile
- Другие изменения на уровне модулей
- Оптимизации
- Изменения сборки и C API
- Устаревшие возможности
- Удалённые возможности
- Перенос на Python 3.5
- Важные изменения в Python 3.5.4
-
Что нового в Python 3.5
-
Что нового в Python 3.4
- Краткое содержание — основные новшества выпуска
- Новые возможности
- Новые модули
-
Улучшенные модули
- abc
- aifc
- argparse
- audioop
- base64
- collections
- colorsys
- contextlib
- dbm
- dis
- doctest
- filecmp
- functools
- gc
- glob
- hashlib
- hmac
- html
- http
- idlelib и IDLE
- importlib
- inspect
- ipaddress
- logging
- marshal
- mmap
- multiprocessing
- operator
- os
- pdb
- pickle
- plistlib
- poplib
- pprint
- pty
- pydoc
- re
- resource
- select
- shelve
- shutil
- smtpd
- smtplib
- socket
- sqlite3
- ssl
- stat
- struct
- subprocess
- sunau
- sys
- tarfile
- textwrap
- threading
- traceback
- types
- urllib
- unittest
- venv
- wave
- weakref
- xml.etree
- zipfile
- Изменения в реализации CPython
- Устаревшие возможности
- Удалено
- Перенос на Python 3.4
- Изменения в версии 3.4.3
-
Что нового в Python 3.3
- Краткое содержание — основные новшества выпуска
- PEP 405: виртуальные окружения
- PEP 420: неявные пакеты пространств имён
- PEP 3118: новая реализация memoryview и документация протокола буферов
- PEP 393: гибкое представление строк
- PEP 397: средство запуска Python для Windows
- PEP 3151: переработка иерархии исключений OS и IO
- PEP 380: синтаксис делегирования подгенератору
- PEP 409: подавление контекста исключения
- PEP 414: явные литералы Unicode
- PEP 3155: квалифицированные имена классов и функций
- PEP 412: словарь с совместным использованием ключей
- PEP 362: объект сигнатуры функции
- PEP 421: добавление sys.implementation
- Использование importlib для реализации импорта
- Другие изменения языка
- Более гранулярная блокировка импорта
- Встроенные функции и типы
- Новые модули
-
Улучшенные модули
- abc
- array
- base64
- binascii
- bz2
- codecs
- collections
- contextlib
- crypt
- curses
- datetime
- decimal
- ftplib
- functools
- gc
- hmac
- http
- html
- imaplib
- inspect
- io
- itertools
- logging
- math
- mmap
- multiprocessing
- nntplib
- os
- pdb
- pickle
- pydoc
- re
- sched
- select
- shlex
- shutil
- signal
- smtpd
- smtplib
- socket
- socketserver
- sqlite3
- ssl
- stat
- struct
- subprocess
- sys
- tarfile
- tempfile
- textwrap
- threading
- time
- types
- unittest
- urllib
- webbrowser
- xml.etree.ElementTree
- zlib
- Оптимизации
- Изменения сборки и C API
- Устаревшие возможности
- Перенос на Python 3.3
-
Что нового в Python 3.4
-
Что нового в Python 3.2
- PEP 384: Определение стабильного ABI
- PEP 389: Модуль argparse для разбора командной строки
- PEP 391: Конфигурация logging на основе словаря
- PEP 3148: Модуль
concurrent.futures - PEP 3147: Каталоги хранения PYC-файлов
- PEP 3149: Файлы .so с указанием версии ABI
- PEP 3333: Интерфейс шлюза веб-сервера Python v1.0.1
- Другие изменения языка
-
Новые, улучшенные и устаревшие модули
- elementtree
- functools
- itertools
- collections
- threading
- datetime и time
- math
- abc
- io
- reprlib
- logging
- csv
- contextlib
- decimal и fractions
- ftp
- popen
- select
- gzip и zipfile
- tarfile
- hashlib
- ast
- os
- shutil
- sqlite3
- html
- socket
- ssl
- nntp
- сертификаты
- imaplib
- http.client
- unittest
- random
- poplib
- asyncore
- tempfile
- inspect
- pydoc
- dis
- dbm
- ctypes
- site
- sysconfig
- pdb
- configparser
- urllib.parse
- mailbox
- turtledemo
- Многопоточность
- Оптимизации
- Unicode
- Кодеки
- Документация
- IDLE
- Репозиторий кода
- Изменения сборки и C API
- Перенос на Python 3.2
- Что нового в Python 3.1
- Что нового в Python 3.0
-
Что нового в Python 2.7
- Будущее Python 2.x
- Изменения обработки предупреждений об устаревании
- Возможности Python 3.1
- PEP 372: Добавление упорядоченного словаря в collections
- PEP 378: Спецификатор формата для разделителя тысяч
- PEP 389: Модуль argparse для разбора командных строк
- PEP 391: Конфигурация logging на основе словаря
- PEP 3106: Представления словарей
- PEP 3137: Объект memoryview
- Другие изменения языка
- Новые и улучшенные модули
- Изменения сборки и C API
- Другие изменения и исправления
- Перенос на Python 2.7
-
Новые возможности, добавленные в выпуски сопровождения Python 2.7
- Две новые переменные окружения для режима отладки
- PEP 434: Исключение для улучшений IDLE во всех ветках
- PEP 466: Улучшения сетевой безопасности для Python 2.7
- PEP 477: Обратный перенос ensurepip (PEP 453) в Python 2.7
- PEP 476: Проверка сертификатов по умолчанию для HTTP-клиентов стандартной библиотеки
- PEP 493: Инструменты миграции проверки HTTPS для Python 2.7
- Новая цель сборки
make regen-all - Удаление цели сборки
make touch
- Благодарности
-
Что нового в Python 2.6
- Python 3.0
- Изменения процесса разработки
- PEP 343: Инструкция ‘with’
- PEP 366: Явные относительные импорты из главного модуля
- PEP 370: Каталог
site-packagesдля каждого пользователя - PEP 371: Пакет
multiprocessing - PEP 3101: Расширенное форматирование строк
- PEP 3105:
printкак функция - PEP 3110: Изменения обработки исключений
- PEP 3112: Байтовые литералы
- PEP 3116: Новая библиотека ввода-вывода
- PEP 3118: Пересмотренный протокол буферов
- PEP 3119: Абстрактные базовые классы
- PEP 3127: Поддержка целочисленных литералов и синтаксис
- PEP 3129: Декораторы классов
- PEP 3141: Иерархия типов для чисел
- Другие изменения языка
- Новые и улучшенные модули
- Устаревшие возможности и удаления
- Изменения сборки и C API
- Перенос на Python 2.6
- Благодарности
-
Что нового в Python 3.2
-
Что нового в Python 2.5
- PEP 308: Условные выражения
- PEP 309: Частичное применение функций
- PEP 314: Метаданные пакетов программного обеспечения Python v1.1
- PEP 328: Абсолютные и относительные импорты
- PEP 338: Запуск модулей как скриптов
- PEP 341: Объединённая конструкция try/except/finally
- PEP 342: Новые возможности генераторов
- PEP 343: Инструкция ‘with’
- PEP 352: Исключения как классы нового стиля
- PEP 353: Использование ssize_t в качестве типа индекса
- PEP 357: Метод ‘__index__’
- Другие изменения языка
- Новые, улучшенные и удалённые модули
- Изменения сборки и C API
- Перенос на Python 2.5
- Благодарности
-
Что нового в Python 2.4
- PEP 218: Встроенные объекты множеств
- PEP 237: Объединение длинных целых чисел и целых чисел
- PEP 289: Генераторные выражения
- PEP 292: Упрощённая подстановка строк
- PEP 318: Декораторы функций и методов
- PEP 322: Обратная итерация
- PEP 324: Новый модуль subprocess
- PEP 327: Тип данных Decimal
- PEP 328: Многострочные импорты
- PEP 331: Независимое от локали преобразование чисел с плавающей точкой в строки и обратно
- Другие изменения языка
- Новые, улучшенные и устаревшие модули
- Изменения сборки и C API
- Перенос на Python 2.4
- Благодарности
-
Что нового в Python 2.3
- PEP 218: Стандартный тип данных «множество»
- PEP 255: Простые генераторы
- PEP 263: Кодировки исходного кода
- PEP 273: Импорт модулей из ZIP-архивов
- PEP 277: Поддержка имён файлов Unicode в Windows NT
- PEP 278: Поддержка универсальных символов новой строки
- PEP 279: enumerate()
- PEP 282: Пакет logging
- PEP 285: Булев тип
- PEP 293: Функции обратного вызова для обработки ошибок кодеков
- PEP 301: Индекс пакетов и метаданные для Distutils
- PEP 302: Новые хуки импорта
- PEP 305: Файлы с разделителями-запятыми
- PEP 307: Улучшения pickle
- Расширенные срезы
- Другие изменения языка
- Новые, улучшенные и устаревшие модули
- Pymalloc: специализированный распределитель памяти для объектов
- Изменения сборки и C API
- Другие изменения и исправления
- Перенос на Python 2.3
- Благодарности
-
Что нового в Python 2.2
- Введение
- PEP 252 и 253: Изменения типов и классов
- PEP 234: Итераторы
- PEP 255: Простые генераторы
- PEP 237: Объединение длинных целых чисел и целых чисел
- PEP 238: Изменение оператора деления
- Изменения Unicode
- PEP 227: Вложенные области видимости
- Новые и улучшенные модули
- Изменения и исправления интерпретатора
- Другие изменения и исправления
- Благодарности
-
Что нового в Python 2.1
- Введение
- PEP 227: Вложенные области видимости
- PEP 236: Директивы __future__
- PEP 207: Расширенные сравнения
- PEP 230: Инфраструктура предупреждений
- PEP 229: Новая система сборки
- PEP 205: Слабые ссылки
- PEP 232: Атрибуты функций
- PEP 235: Импорт модулей на платформах без учёта регистра
- PEP 217: Хук интерактивного отображения
- PEP 208: Новая модель приведения типов
- PEP 241: Метаданные в пакетах Python
- Новые и улучшенные модули
- Другие изменения и исправления
- Благодарности
-
Что нового в Python 2.0
- Введение
- А что насчёт Python 1.6?
- Новый процесс разработки
- Unicode
- Генераторы списков
- Составное присваивание
- Методы строк
- Сборка циклического мусора
- Другие изменения ядра
- Перенос на версию 2.0
- Изменения расширения и встраивания
- Distutils: упрощение установки модулей
- Модули XML
- Изменения модулей
- Новые модули
- Улучшения IDLE
- Удалённые и устаревшие модули
- Благодарности
-
Что нового в Python 2.5
-
Журнал изменений
- Python 3.11.11 — окончательный выпуск
- Python 3.11.10 — окончательный выпуск
- Python 3.11.9 — окончательный выпуск
- Python 3.11.8 — окончательный выпуск
- Python 3.11.7 — окончательный выпуск
- Python 3.11.6 — окончательный выпуск
- Python 3.11.5 — окончательный выпуск
- Python 3.11.4 — окончательный выпуск
- Python 3.11.3 — окончательный выпуск
- Python 3.11.2 — окончательный выпуск
- Python 3.11.1 — окончательный выпуск
- Python 3.11.0 — окончательный выпуск
- Python 3.11.0 — кандидат на выпуск 2
- Python 3.11.0 — кандидат на выпуск 1
- Python 3.11.0 — бета-версия 5
- Python 3.11.0 — бета-версия 4
- Python 3.11.0 — бета-версия 3
- Python 3.11.0 — бета-версия 2
- Python 3.11.0 — бета-версия 1
- Python 3.11.0 — альфа-версия 7
- Python 3.11.0 — альфа-версия 6
- Python 3.11.0 — альфа-версия 5
- Python 3.11.0 — альфа-версия 4
- Python 3.11.0 — альфа-версия 3
- Python 3.11.0 — альфа-версия 2
-
Журнал изменений
- Python 3.11.0 альфа 1
- Python 3.10.0 бета 1
- Python 3.10.0 альфа 7
- Python 3.10.0 альфа 6
- Python 3.10.0 альфа 5
- Python 3.10.0 альфа 4
- Python 3.10.0 альфа 3
- Python 3.10.0 альфа 2
- Python 3.10.0 альфа 1
- Python 3.9.0 бета 1
- Python 3.9.0 альфа 6
- Python 3.9.0 альфа 5
- Python 3.9.0 альфа 4
- Python 3.9.0 альфа 3
- Python 3.9.0 альфа 2
- Python 3.9.0 альфа 1
- Python 3.8.0 бета 1
- Python 3.8.0 альфа 4
- Python 3.8.0 альфа 3
- Python 3.8.0 альфа 2
- Python 3.8.0 альфа 1
- Python 3.7.0 — финальный выпуск
- Python 3.7.0 — кандидат на выпуск 1
- Python 3.7.0 — бета-версия 5
- Python 3.7.0 — бета-версия 4
- Python 3.7.0 — бета-версия 3
- Python 3.7.0 — бета-версия 2
- Python 3.7.0 — бета-версия 1
- Python 3.7.0 — альфа-версия 4
- Python 3.7.0 — альфа-версия 3
- Python 3.7.0 — альфа-версия 2
- Python 3.7.0 — альфа-версия 1
- Python 3.6.6 — финальный выпуск
- Python 3.6.6 — кандидат на выпуск 1
- Python 3.6.5 — финальный выпуск
- Python 3.6.5 — кандидат на выпуск 1
- Python 3.6.4 — финальный выпуск
- Python 3.6.4 — кандидат на выпуск 1
- Python 3.6.3 — финальный выпуск
- Python 3.6.3 — кандидат на выпуск 1
- Python 3.6.2 — финальный выпуск
- Python 3.6.2 — кандидат на выпуск 2
- Python 3.6.2 — кандидат на выпуск 1
- Python 3.6.1 — финальный выпуск
- Python 3.6.1 — кандидат на выпуск 1
- Python 3.6.0 — финальный выпуск
- Python 3.6.0 — кандидат на выпуск 2
- Python 3.6.0 — кандидат на выпуск 1
- Python 3.6.0 — бета-версия 4
- Python 3.6.0 — бета-версия 3
- Python 3.6.0 — бета-версия 2
- Python 3.6.0 — бета-версия 1
- Python 3.6.0 — альфа-версия 4
- Python 3.6.0 альфа 3
- Python 3.6.0 альфа 2
- Python 3.6.0 альфа 1
- Python 3.5.5 финальный выпуск
- Python 3.5.5 кандидат на выпуск 1
- Python 3.5.4 финальный выпуск
- Python 3.5.4 кандидат на выпуск 1
- Python 3.5.3 финальный выпуск
- Python 3.5.3 кандидат на выпуск 1
- Python 3.5.2 финальный выпуск
- Python 3.5.2 кандидат на выпуск 1
- Python 3.5.1 финальный выпуск
- Python 3.5.1 кандидат на выпуск 1
- Python 3.5.0 финальный выпуск
- Python 3.5.0 кандидат на выпуск 4
- Python 3.5.0 кандидат на выпуск 3
- Python 3.5.0 кандидат на выпуск 2
- Python 3.5.0 кандидат на выпуск 1
- Python 3.5.0 бета 4
- Python 3.5.0 бета 3
- Python 3.5.0 бета 2
- Python 3.5.0 бета 1
- Python 3.5.0 альфа 4
- Python 3.5.0 альфа 3
- Python 3.5.0 альфа 2
- Python 3.5.0 альфа 1
-
Учебник Python
- 1. Для начала — разжигаем аппетит
- 2. Использование интерпретатора Python
- 3. Неформальное введение в Python
-
4. Дополнительные средства управления потоком выполнения
- 4.1. Инструкции
if - 4.2. Инструкции
for - 4.3. Функция
range() - 4.4. Инструкции
breakиcontinueи предложенияelseв циклах - 4.5. Инструкции
pass - 4.6. Инструкции
match - 4.7. Определение функций
- 4.8. Подробнее об определении функций
- 4.9. Отступление: стиль написания кода
- 4.1. Инструкции
- 5. Структуры данных
- 6. Модули
- 7. Ввод и вывод
-
8. Ошибки и исключения
- 8.1. Синтаксические ошибки
- 8.2. Исключения
- 8.3. Обработка исключений
- 8.4. Возбуждение исключений
- 8.5. Цепочки исключений
- 8.6. Исключения, определяемые пользователем
- 8.7. Определение действий по очистке
- 8.8. Предопределённые действия по очистке
- 8.9. Возбуждение и обработка нескольких несвязанных исключений
- 8.10. Дополнение исключений заметками
- 9. Классы
-
10. Краткий обзор стандартной библиотеки
- 10.1. Интерфейс операционной системы
- 10.2. Подстановочные символы в именах файлов
- 10.3. Аргументы командной строки
- 10.4. Перенаправление вывода ошибок и завершение программы
- 10.5. Сопоставление строк с шаблоном
- 10.6. Математика
- 10.7. Доступ к Интернету
- 10.8. Даты и время
- 10.9. Сжатие данных
- 10.10. Измерение производительности
- 10.11. Контроль качества
- 10.12. Всё включено
- 11. Краткий обзор стандартной библиотеки — часть II
- 12. Виртуальные окружения и пакеты
- 13. Что дальше?
- 14. Интерактивное редактирование ввода и подстановка из истории
- 15. Арифметика с плавающей точкой: проблемы и ограничения
- 16. Приложение
-
Настройка и использование Python
- 1. Командная строка и окружение
- 2. Использование Python на платформах Unix
-
3. Настройка Python
-
3.1. Параметры настройки
- 3.1.1. Общие параметры
- 3.1.2. Параметры WebAssembly
- 3.1.3. Параметры установки
- 3.1.4. Параметры производительности
- 3.1.5. Отладочная сборка Python
- 3.1.6. Параметры отладки
- 3.1.7. Параметры компоновщика
- 3.1.8. Параметры библиотек
- 3.1.9. Параметры безопасности
- 3.1.10. Параметры macOS
- 3.1.11. Параметры кросс-компиляции
- 3.2. Система сборки Python
- 3.3. Флаги компилятора и компоновщика
-
3.1. Параметры настройки
-
4. Использование Python в Windows
- 4.1. Полный установщик
- 4.2. Пакет Microsoft Store
- 4.3. Пакеты nuget.org
- 4.4. Встраиваемый пакет
- 4.5. Альтернативные комплекты
- 4.6. Настройка Python
- 4.7. Режим UTF-8
- 4.8. Средство запуска Python для Windows
- 4.9. Поиск модулей
- 4.10. Дополнительные модули
- 4.11. Компиляция Python в Windows
- 4.12. Другие платформы
- 5. Использование Python на Mac
- 6. Редакторы и интегрированные среды разработки
-
Справочник по языку Python
- 1. Введение
- 2. Лексический анализ
-
3. Модель данных
- 3.1. Объекты, значения и типы
-
3.2. Стандартная иерархия типов
- 3.2.1. None
- 3.2.2. NotImplemented
- 3.2.3. Ellipsis
-
3.2.4.
numbers.Number - 3.2.5. Последовательности
- 3.2.6. Типы множеств
- 3.2.7. Отображения
- 3.2.8. Вызываемые типы
- 3.2.9. Модули
- 3.2.10. Пользовательские классы
- 3.2.11. Экземпляры классов
- 3.2.12. Объекты ввода-вывода (также известные как файловые объекты)
- 3.2.13. Внутренние типы
-
3.3. Имена специальных методов
- 3.3.1. Основная настройка
- 3.3.2. Настройка доступа к атрибутам
- 3.3.3. Настройка создания классов
- 3.3.4. Настройка проверок экземпляров и подклассов
- 3.3.5. Эмуляция обобщённых типов
- 3.3.6. Эмуляция вызываемых объектов
- 3.3.7. Эмуляция типов-контейнеров
- 3.3.8. Эмуляция числовых типов
- 3.3.9. Менеджеры контекста оператора with
- 3.3.10. Настройка позиционных аргументов при сопоставлении с образцом класса
- 3.3.11. Поиск специальных методов
- 3.4. Корутины
- 4. Модель выполнения
- 5. Система импорта
-
6. Выражения
- 6.1. Арифметические преобразования
- 6.2. Атомы
- 6.3. Первичные выражения
- 6.4. Выражение await
- 6.5. Оператор возведения в степень
- 6.6. Унарные арифметические и побитовые операции
- 6.7. Бинарные арифметические операции
- 6.8. Операции сдвига
- 6.9. Бинарные побитовые операции
- 6.10. Сравнения
- 6.11. Логические операции
- 6.12. Выражения присваивания
- 6.13. Условные выражения
- 6.14. Лямбда-выражения
- 6.15. Списки выражений
- 6.16. Порядок вычисления
- 6.17. Приоритет операторов
-
7. Простые инструкции
- 7.1. Инструкции-выражения
- 7.2. Инструкции присваивания
- 7.3. Инструкция
assert - 7.4. Инструкция
pass - 7.5. Инструкция
del - 7.6. Инструкция
return - 7.7. Инструкция
yield - 7.8. Инструкция
raise - 7.9. Инструкция
break - 7.10. Инструкция
continue -
7.11. Инструкция
import - 7.12. Инструкция
global - 7.13. Инструкция
nonlocal
- 8. Составные инструкции
-
Стандартная библиотека Python
- Введение
- Встроенные функции
- Встроенные константы
-
Встроенные типы
- Проверка истинности
- Булевы операции —
and,or,not - Сравнения
-
Числовые типы —
int,float,complex - Типы итераторов
-
Типы последовательностей —
list,tuple,range -
Текстовый тип последовательности —
str -
Типы двоичных последовательностей —
bytes,bytearray,memoryview - Типы множеств —
set,frozenset -
Типы отображений —
dict - Типы менеджеров контекста
- Типы аннотаций типов — Обобщённый псевдоним, Объединение
- Другие встроенные типы
- Специальные атрибуты
- Ограничение длины преобразования целого числа в строку
- Встроенные исключения
-
Службы обработки текста
-
string— распространённые операции со строками -
re— операции с регулярными выражениями -
difflib— вспомогательные средства для вычисления различий textwrap— перенос и заполнение текстаunicodedata— база данных Unicodestringprep— подготовка интернет-строк-
readline— интерфейс GNU readline rlcompleter— функция автодополнения для GNU readline
-
-
Службы обработки двоичных данных
-
struct— интерпретация байтов как упакованных двоичных данных -
codecs— реестр кодеков и базовые классы
-
-
Типы данных
-
datetime— основные типы даты и времени -
zoneinfo— поддержка часовых поясов IANA -
calendar— общие функции для работы с календарём -
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— высокоуровневые операции с файлами
-
-
Типы данных
-
Сохранение данных
-
pickle— сериализация объектов Python -
copyreg— регистрация вспомогательных функций дляpickle -
shelve— сохранение объектов Python marshal— внутренняя сериализация объектов Python-
dbm— интерфейсы к «базам данных» Unix -
sqlite3— интерфейс DB-API 2.0 для баз данных SQLite- Руководство
- Справочник
-
Практические руководства
- Как использовать заполнители для подстановки значений в SQL-запросы
- Как адаптировать пользовательские типы Python к значениям SQLite
- Как преобразовывать значения SQLite в пользовательские типы Python
- Примеры использования адаптеров и преобразователей
- Как использовать сокращённые методы соединения
- Как использовать менеджер контекста соединения
- Как работать с URI SQLite
- Как создавать и использовать фабрики строк
- Как обрабатывать текстовые кодировки, отличные от UTF-8
- Пояснения
-
-
Сжатие и архивирование данных
zlib— сжатие, совместимое с gzip-
gzip— поддержка файлов gzip -
bz2— поддержка сжатия bzip2 -
lzma— сжатие с использованием алгоритма LZMA -
zipfile— работа с ZIP-архивами -
tarfile— чтение и запись файлов tar-архивов
- Форматы файлов
-
Криптографические службы
-
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— Расширение со стеком панелей для curses -
platform— Доступ к идентификационным данным базовой платформы errno— Стандартные системные символы errno-
ctypes— Библиотека внешних функций для Python-
Учебное руководство по ctypes
- Загрузка динамических библиотек
- Доступ к функциям загруженных DLL
- Вызов функций
- Основные типы данных
- Продолжение темы вызова функций
- Вызов функций с переменным числом аргументов
- Вызов функций с собственными типами данных
- Указание требуемых типов аргументов (прототипы функций)
- Типы возвращаемых значений
- Передача указателей (или передача параметров по ссылке)
- Структуры и объединения
- Выравнивание и порядок байтов структур и объединений
- Битовые поля в структурах и объединениях
- Массивы
- Указатели
- Преобразования типов
- Неполные типы
- Функции обратного вызова
- Доступ к значениям, экспортируемым DLL
- Неожиданности
- Типы данных переменного размера
- Справочник по ctypes
-
Учебное руководство по ctypes
-
-
Общие службы операционной системы
-
Параллельное выполнение
-
threading— параллелизм на основе потоков -
multiprocessing— параллелизм на основе процессов multiprocessing.shared_memory— разделяемая память для прямого доступа из разных процессов- Пакет
concurrent -
concurrent.futures— запуск параллельных задач -
subprocess— управление подпроцессами -
sched— планировщик событий -
queue— класс синхронизированной очереди -
contextvars— переменные контекста _thread— низкоуровневый API потоков
-
-
Параллельное выполнение
-
Сетевое взаимодействие и межпроцессное взаимодействие
-
asyncio— Асинхронный ввод-вывод- Запуски
- Сопрограммы и задачи
- Потоки
- Примитивы синхронизации
- Подпроцессы
- Очереди
- Исключения
-
Цикл событий
-
Методы цикла событий
- Запуск и остановка цикла
- Планирование функций обратного вызова
- Планирование отложенных функций обратного вызова
- Создание Future и Task
- Открытие сетевых соединений
- Создание сетевых серверов
- Передача файлов
- Переход на TLS
- Отслеживание файловых дескрипторов
- Непосредственная работа с объектами сокетов
- DNS
- Работа с каналами
- Сигналы Unix
- Выполнение кода в пулах потоков или процессов
- API обработки ошибок
- Включение режима отладки
- Запуск подпроцессов
- Дескрипторы функций обратного вызова
- Объекты Server
- Реализации цикла событий
- Примеры
-
Методы цикла событий
- Future
- Транспорты и протоколы
- Политики
- Поддержка платформ
- Расширение
- Указатель высокоуровневого API
- Указатель низкоуровневого API
- Разработка с asyncio
-
socket— Низкоуровневый сетевой интерфейс -
ssl— Обёртка TLS/SSL для объектов сокетов -
select— Ожидание завершения операций ввода-вывода -
selectors— Высокоуровневая мультиплексация ввода-вывода -
signal— Установка обработчиков асинхронных событий -
mmap— Поддержка файлов, отображённых в память
-
-
Сетевое взаимодействие и межпроцессное взаимодействие
-
Обработка интернет-данных
-
email— пакет для работы с электронной почтой и MIMEemail.message: представление сообщения электронной почты-
email.parser: разбор сообщений электронной почты email.generator: создание MIME-документовemail.policy: объекты политикemail.errors: классы исключений и дефектовemail.headerregistry: пользовательские объекты заголовков-
email.contentmanager: управление MIME-содержимым email: примерыemail.message.Message: представление сообщения электронной почты с использованием APIcompat32email.mime: создание объектов электронной почты и MIME с нуляemail.header: интернационализированные заголовкиemail.charset: представление наборов символовemail.encoders: кодировщикиemail.utils: различные утилитыemail.iterators: итераторы
-
json— кодировщик и декодер JSON -
mailbox— работа с почтовыми ящиками различных форматов -
mimetypes— сопоставление имён файлов с типами MIME -
base64— кодирование данных Base16, Base32, Base64 и Base85 binascii— преобразование двоичных данных в ASCII и обратноquopri— кодирование и декодирование данных MIME в формате quoted-printable
-
-
Средства обработки структурированной разметки
html— поддержка языка разметки гипертекста-
html.parser— простой анализатор HTML и XHTML html.entities— определения общих сущностей HTML- Модули обработки XML
-
xml.etree.ElementTree— API ElementTree для XML -
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— удобное управление веб-браузером -
wsgiref— утилиты WSGI и эталонная реализацияwsgiref.util– утилиты окружения WSGIwsgiref.headers– средства работы с заголовками ответов WSGIwsgiref.simple_server– простой HTTP-сервер WSGIwsgiref.validate— проверка соответствия WSGIwsgiref.handlers– базовые классы сервера/шлюзаwsgiref.types– типы WSGI для статической проверки типов- Примеры
urllib— модули для работы с URL-
urllib.request— расширяемая библиотека для открытия URL- Объекты Request
- Объекты OpenerDirector
- Объекты BaseHandler
- Объекты HTTPRedirectHandler
- Объекты HTTPCookieProcessor
- Объекты ProxyHandler
- Объекты HTTPPasswordMgr
- Объекты HTTPPasswordMgrWithPriorAuth
- Объекты AbstractBasicAuthHandler
- Объекты HTTPBasicAuthHandler
- Объекты ProxyBasicAuthHandler
- Объекты AbstractDigestAuthHandler
- Объекты HTTPDigestAuthHandler
- Объекты ProxyDigestAuthHandler
- Объекты HTTPHandler
- Объекты HTTPSHandler
- Объекты FileHandler
- Объекты DataHandler
- Объекты FTPHandler
- Объекты CacheFTPHandler
- Объекты UnknownHandler
- Объекты HTTPErrorProcessor
- Примеры
- Устаревший интерфейс
- Ограничения
urllib.request
urllib.response— классы ответов, используемые urllib-
urllib.parse— разбор URL на компоненты urllib.error— классы исключений, вызываемых urllib.requesturllib.robotparser— анализатор robots.txt-
http— модули HTTP -
http.client— клиент протокола HTTP -
ftplib— клиент протокола FTP -
poplib— клиент протокола POP3 -
imaplib— клиент протокола IMAP4 -
smtplib— клиент протокола SMTP -
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
-
- Мультимедийные службы
- Интернационализация
-
Программные платформы
-
turtle— черепашья графика- Введение
- Руководство
- Как…
- Справочник по черепашьей графике
- Методы RawTurtle/Turtle и соответствующие функции
- Методы TurtleScreen/Screen и соответствующие функции
- Общедоступные классы
- Пояснение
- Справка и настройка
turtledemo— демонстрационные скрипты- Изменения начиная с Python 2.6
- Изменения начиная с Python 3.0
-
cmd— поддержка интерпретаторов команд с построчным вводом -
shlex— простой лексический анализ
-
-
Интернет-протоколы и поддержка
-
Графические интерфейсы пользователя с Tk
-
tkinter— интерфейс Python к Tcl/Tk tkinter.colorchooser— диалог выбора цветаtkinter.font— оболочка шрифтов Tkinter- Диалоговые окна Tkinter
tkinter.messagebox— диалоговые сообщения Tkintertkinter.scrolledtext— текстовый виджет с прокруткойtkinter.dnd— поддержка перетаскивания-
tkinter.ttk— тематические виджеты Tk -
tkinter.tix— дополнительные виджеты для Tk -
IDLE
-
Меню
- Меню «Файл» (оболочка и редактор)
- Меню «Правка» (оболочка и редактор)
- Меню «Формат» (только окно редактора)
- Меню «Запуск» (только окно редактора)
- Меню «Оболочка» (только окно оболочки)
- Меню «Отладка» (только окно оболочки)
- Меню «Параметры» (оболочка и редактор)
- Меню «Окно» (оболочка и редактор)
- Меню «Справка» (оболочка и редактор)
- Контекстные меню
- Редактирование и навигация
- Запуск и выполнение кода
- Справка и настройки
- idlelib
-
Меню
-
-
Графические интерфейсы пользователя с Tk
-
Средства разработки
-
typing— поддержка подсказок типов- Соответствующие PEP
- Псевдонимы типов
- NewType
- Аннотирование вызываемых объектов
- Обобщённые типы
- Аннотирование кортежей
- Тип объектов классов
- Определяемые пользователем обобщённые типы
- Тип
Any - Номинальная и структурная подтипизация
-
Содержимое модуля
- Специальные средства аннотирования типов
- Протоколы
- Абстрактные базовые классы для работы с вводом-выводом
- Функции и декораторы
- Вспомогательные средства интроспекции
- Константа
-
Устаревшие псевдонимы
- Псевдонимы встроенных типов
- Псевдонимы типов из
collections - Псевдонимы других конкретных типов
- Псевдонимы абстрактных базовых классов-контейнеров из
collections.abc - Псевдонимы асинхронных абстрактных базовых классов из
collections.abc - Псевдонимы других абстрактных базовых классов из
collections.abc - Псевдонимы абстрактных базовых классов
contextlib
- Сроки вывода из употребления основных возможностей
pydoc— генератор документации и система интерактивной справки- Режим разработки Python
-
doctest— тестирование интерактивных примеров Python -
unittest— модульная среда тестирования -
unittest.mock— библиотека объектов-заглушек -
unittest.mock— начало работы-
Использование Mock
- Подмена методов с помощью Mock
- Mock для вызовов методов объекта
- Имитация классов
- Именование объектов Mock
- Отслеживание всех вызовов
- Задание возвращаемых значений и атрибутов
- Возбуждение исключений с помощью объектов Mock
- Функции итерируемые объекты side effect
- Имитация асинхронных итераторов
- Имитация асинхронного менеджера контекста
- Создание Mock на основе существующего объекта
- Использование side_effect для возврата содержимого каждого файла
- Декораторы Patch
-
Дополнительные примеры
- Имитация цепочек вызовов
- Частичная имитация
- Имитация метода-генератора
- Применение одной и той же подмены ко всем тестовым методам
- Имитация несвязанных методов
- Проверка нескольких вызовов с помощью Mock
- Работа с изменяемыми аргументами
- Вложенные подмены
- Имитация словаря с помощью MagicMock
- Подклассы Mock и их атрибуты
- Имитация импорта с помощью patch.dict
- Отслеживание порядка вызовов и более краткие утверждения о вызовах
- Более сложное сопоставление аргументов
-
Использование Mock
- 2to3 — автоматический перевод кода Python 2 в Python 3
-
test— пакет регрессионных тестов для Python test.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— вывод трассировки стека Python -
pdb— отладчик Python - Профилировщики Python
-
timeit— измерение времени выполнения небольших фрагментов кода -
trace— трассировка или отслеживание выполнения инструкций Python -
tracemalloc— отслеживание выделения памяти
- Упаковка и распространение программного обеспечения
-
Средства разработки
-
Службы среды выполнения Python
sys— Системно-зависимые параметры и функции-
sysconfig— Доступ к сведениям о конфигурации Python builtins— Встроенные объекты-
__main__— Среда выполнения кода верхнего уровня -
warnings— Управление предупреждениями -
dataclasses— Классы данных- Содержимое модуля
- Обработка после инициализации
- Переменные класса
- Переменные только для инициализации
- Неизменяемые экземпляры
- Наследование
- Изменение порядка параметров, доступных только по ключевому слову, в
__init__() - Функции-фабрики по умолчанию
- Изменяемые значения по умолчанию
- Поля с типом дескриптора
-
contextlib— Утилиты для контекстов оператораwith abc— Абстрактные базовые классы-
atexit— Обработчики завершения -
traceback— Вывод или получение трассировки стека -
__future__— Определения инструкций future gc— Интерфейс сборщика мусора-
inspect— Инспектирование активных объектов -
site— Хук конфигурации для конкретного сайта
- Пользовательские интерпретаторы Python
-
Импорт модулей
-
zipimport— Импорт модулей из ZIP-архивов pkgutil— Утилита расширения пакетов-
modulefinder— Поиск модулей, используемых скриптом runpy— Поиск и выполнение модулей Python-
importlib— Реализацияimport -
importlib.resources– Чтение, открытие и доступ к ресурсам пакета importlib.resources.abc– Абстрактные базовые классы для ресурсов-
importlib.metadata– Доступ к метаданным пакетов -
Инициализация пути поиска модулей
sys.path
-
-
Службы языка Python
-
ast— Абстрактные синтаксические деревья -
symtable— Доступ к таблицам символов компилятора token— Константы для деревьев разбора Pythonkeyword— Проверка ключевых слов Python-
tokenize— Токенизатор исходного кода Python tabnanny— Обнаружение неоднозначных отступов-
pyclbr— Поддержка браузера модулей Python -
py_compile— Компиляция исходных файлов Python -
compileall— Компиляция библиотек Python в байт-код -
dis— Дизассемблер байт-кода Python -
pickletools— Инструменты для разработчиков pickle
-
- Службы, специфичные для MS Windows
-
Службы, специфичные для Unix
-
posix— Наиболее распространённые системные вызовы POSIX pwd— База данных паролейgrp— База данных групп-
termios— Управление tty в стиле POSIX tty— Функции управления терминалом-
pty— Утилиты псевдотерминала fcntl— Системные вызовыfcntlиioctl-
resource— Сведения об использовании ресурсов -
syslog— Процедуры библиотеки syslog в Unix
-
- Интерфейс командной строки (CLI) модулей
-
Службы среды выполнения Python
-
Устаревшие модули
aifc— Чтение и запись файлов AIFF и AIFC-
asynchat— Асинхронный обработчик команд и ответов сокета -
asyncore— Асинхронный обработчик сокетов audioop— Обработка необработанных аудиоданных-
cgi— Поддержка Common Gateway Interface cgitb— Обработчик трассировок для CGI-скриптовchunk— Чтение данных IFF, разбитых на блоки-
crypt— Функция проверки паролей Unix imghdr— Определение типа изображения-
imp— Доступ к внутренним компонентам import mailcap— Обработка файлов Mailcap-
msilib— Чтение и запись файлов Microsoft Installer nis— Интерфейс к NIS (Yellow Pages) компании Sun-
nntplib— Клиент протокола NNTP -
optparse— Анализатор параметров командной строки- Общие сведения
- Учебное руководство
- Справочное руководство
-
Функции обратного вызова параметров
- Определение параметра с функцией обратного вызова
- Как вызываются функции обратного вызова
- Генерация ошибок в функции обратного вызова
- Пример функции обратного вызова 1: простая функция
- Пример функции обратного вызова 2: проверка порядка параметров
- Пример функции обратного вызова 3: проверка порядка параметров (обобщённый вариант)
- Пример функции обратного вызова 4: проверка произвольного условия
- Пример функции обратного вызова 5: фиксированные аргументы
- Пример функции обратного вызова 6: переменное число аргументов
-
Расширение
optparse - Исключения
-
ossaudiodev— Доступ к аудиоустройствам, совместимым с OSS -
pipes— Интерфейс к конвейерам командной оболочки -
smtpd— SMTP-сервер sndhdr— Определение типа звукового файлаspwd— База данных теневых паролей-
sunau— Чтение и запись файлов Sun AU -
telnetlib— Клиент Telnet uu— Кодирование и декодирование файлов uuencode-
xdrlib— Кодирование и декодирование данных XDR
- Вопросы безопасности
-
Устаревшие модули
-
Расширение и встраивание интерпретатора Python
- Рекомендуемые сторонние инструменты
-
Создание расширений без сторонних инструментов
-
1. Расширение Python с помощью C или C++
- 1.1. Простой пример
- 1.2. Отступление: ошибки и исключения
- 1.3. Возвращаемся к примеру
- 1.4. Таблица методов модуля и функция инициализации
- 1.5. Компиляция и компоновка
- 1.6. Вызов функций Python из C
- 1.7. Извлечение параметров в функциях расширения
- 1.8. Именованные параметры для функций расширения
- 1.9. Создание произвольных значений
- 1.10. Счётчики ссылок
- 1.11. Написание расширений на C++
- 1.12. Предоставление API на C для модуля расширения
- 2. Определение типов расширения: учебное руководство
- 3. Определение типов расширения: различные темы
- 4. Сборка расширений на C и C++
- 5. Сборка расширений на C и C++ в Windows
-
1. Расширение Python с помощью C или C++
- Встраивание среды выполнения CPython в более крупное приложение
-
Справочное руководство по Python/C API
- Введение
- Стабильность C API
- Слой очень высокого уровня
- Подсчёт ссылок
- Обработка исключений
- Утилиты
- Слой абстрактных объектов
-
Слой конкретных объектов
- Основные объекты
- Числовые объекты
- Объекты-последовательности
- Объекты-контейнеры
- Объекты-функции
- Другие объекты
-
Инициализация, завершение работы и потоки
- До инициализации Python
- Глобальные переменные конфигурации
- Инициализация и завершение работы интерпретатора
- Параметры уровня процесса
- Состояние потока и глобальная блокировка интерпретатора
- Поддержка субинтерпретаторов
- Асинхронные уведомления
- Профилирование и трассировка
- Расширенная поддержка отладчиков
- Поддержка локального хранилища потоков
-
Конфигурация инициализации Python
- Пример
- PyWideStringList
- PyStatus
- PyPreConfig
- Предварительная инициализация Python с помощью PyPreConfig
- PyConfig
- Инициализация с помощью PyConfig
- Изолированная конфигурация
- Конфигурация Python
- Конфигурация пути Python
- Py_RunMain()
- Py_GetArgcArgv()
- Частный предварительный API многофазной инициализации
-
Управление памятью
- Обзор
- Области распределителей памяти
- Интерфейс низкоуровневой работы с памятью
- Интерфейс работы с памятью
- Распределители памяти объектов
- Распределители памяти по умолчанию
- Настройка распределителей памяти
- Отладочные перехватчики распределителей памяти Python
- Распределитель pymalloc
- C API tracemalloc
- Примеры
-
Поддержка реализации объектов
- Выделение памяти для объектов в куче
- Общие структуры объектов
- Объекты типов
- Структуры числовых объектов
- Структуры объектов-отображений
- Структуры объектов-последовательностей
- Структуры объектов-буферов
- Структуры асинхронных объектов
- Определения типов слотов
- Примеры
- Поддержка циклической сборки мусора
- Версионирование API и ABI
- Установка модулей Python
-
Руководства HOWTO по Python
- Перенос модулей расширения на Python 3
- Программирование на curses с помощью Python
- Руководство по дескрипторам
- Отладка расширений C API и внутреннего устройства CPython с помощью GDB
-
Руководство HOWTO по Enum
- Программный доступ к элементам перечисления и их атрибутам
- Дублирование элементов и значений enum
- Обеспечение уникальности значений перечисления
- Использование автоматических значений
- Итерация
- Сравнения
- Допустимые элементы и атрибуты перечислений
- Ограниченное создание подклассов Enum
- Сериализация с помощью pickle
- Функциональный API
- Производные перечисления
-
Когда использовать
__new__(), а когда —__init__() - Чем отличаются Enum и Flag?
- Сборник рецептов Enum
- Создание подклассов EnumType
- Руководство HOWTO по функциональному программированию
- Руководство HOWTO по ведению журнала
-
Сборник рецептов ведения журнала
- Использование ведения журнала в нескольких модулях
- Ведение журнала из нескольких потоков
- Несколько обработчиков и форматировщиков
- Запись журнала в несколько мест назначения
- Пользовательская обработка уровней
- Пример сервера конфигурации
- Работа с блокирующими обработчиками
- Отправка и получение событий журнала по сети
- Добавление контекстной информации в вывод журнала
- Использование
contextvars - Добавление контекстной информации в обработчики
- Запись журнала нескольких процессов в один файл
- Использование ротации файлов
- Использование альтернативных стилей форматирования
- Настройка
LogRecord - Создание подклассов QueueHandler и QueueListener — пример с ZeroMQ
-
Создание подклассов QueueHandler и QueueListener — пример с
pynng - Пример конфигурации на основе словаря
- Использование rotator и namer для настройки ротации журналов
- Более подробный пример многопроцессной обработки
- Вставка BOM в сообщения, отправляемые в SysLogHandler
- Реализация структурированного ведения журнала
- Настройка обработчиков с помощью
dictConfig() - Использование выбранных стилей форматирования во всём приложении
- Настройка фильтров с помощью
dictConfig() - Настраиваемое форматирование исключений
- Озвучивание сообщений журнала
- Буферизация сообщений журнала и их условный вывод
- Отправка сообщений журнала по электронной почте с буферизацией
- Форматирование времени в UTC (GMT) с помощью конфигурации
- Использование менеджера контекста для выборочного ведения журнала
- Шаблон-заготовка приложения CLI
- Графический интерфейс Qt для ведения журнала
- Запись в syslog с поддержкой RFC5424
- Как использовать регистратор в качестве потока вывода
- Нежелательные шаблоны
- Другие ресурсы
- Руководство HOWTO по регулярным выражениям
- Руководство по программированию сокетов
- Руководство по сортировке
- Руководство по Unicode
- Руководство по получению интернет-ресурсов с помощью пакета urllib
- Руководство по argparse
- Введение в модуль ipaddress
- Инструментирование CPython с помощью DTrace и SystemTap
- Рекомендации по аннотациям
-
Изоляция модулей расширений
- Кому следует прочитать этот раздел
- Общие сведения
- Обеспечение безопасности модулей при работе с несколькими интерпретаторами
- Типы в куче
- Нерешённые вопросы
-
Часто задаваемые вопросы о Python
- Общие вопросы о Python
- Вопросы о программировании
-
Вопросы о проектировании и истории
- Почему Python использует отступы для группировки инструкций?
- Почему простые арифметические операции дают странные результаты?
- Почему вычисления с плавающей точкой настолько неточны?
- Почему строки Python неизменяемы?
- Почему в определениях и вызовах методов нужно явно указывать ‘self’?
- Почему нельзя использовать присваивание в выражении?
- Почему для одних операций Python использует методы (например, list.index()), а для других — функции (например, len(list))?
- Почему join() — это метод строки, а не списка или кортежа?
- Насколько быстро работают исключения?
- Почему в Python нет инструкции switch или case?
- Можно ли эмулировать потоки в интерпретаторе, а не полагаться на специфичную для ОС реализацию потоков?
- Почему лямбда-выражения не могут содержать инструкции?
- Можно ли компилировать Python в машинный код, C или какой-либо другой язык?
- Как Python управляет памятью?
- Почему CPython не использует более традиционный механизм сборки мусора?
- Почему при завершении CPython освобождается не вся память?
- Почему кортежи и списки представлены разными типами данных?
- Как реализованы списки в CPython?
- Как реализованы словари в CPython?
- Почему ключи словаря должны быть неизменяемыми?
- Почему list.sort() не возвращает отсортированный список?
- Как задать и обеспечить соблюдение спецификации интерфейса в Python?
- Почему в Python нет goto?
- Почему необработанные строки (r-строки) не могут заканчиваться обратной косой чертой?
- Почему в Python нет инструкции “with” для присваивания атрибутов?
- Почему генераторы не поддерживают инструкцию with?
- Почему после инструкций if/while/def/class требуется двоеточие?
- Почему Python допускает запятые в конце списков и кортежей?
- Вопросы о библиотеках и расширениях
-
Вопросы о расширении и встраивании
- Можно ли создавать собственные функции на C?
- Можно ли создавать собственные функции на C++?
- Писать на C сложно; есть ли альтернативы?
- Как выполнить произвольные инструкции Python из C?
- Как вычислить произвольное выражение Python из C?
- Как извлечь значения C из объекта Python?
- Как использовать Py_BuildValue() для создания кортежа произвольной длины?
- Как вызвать метод объекта из C?
- Как перехватить вывод PyErr_Print() (или любой другой вывод в stdout/stderr)?
- Как получить доступ к модулю, написанному на Python, из C?
- Как взаимодействовать с объектами C++ из Python?
- Я добавил модуль с помощью файла Setup, но make завершается с ошибкой. Почему?
- Как отлаживать расширение?
- Я хочу скомпилировать модуль Python в своей системе Linux, но некоторые файлы отсутствуют. Почему?
- Как отличить «неполный ввод» от «недопустимого ввода»?
- Как найти неопределённые символы g++ __builtin_new или __pure_virtual?
- Можно ли создать класс объектов, в котором одни методы реализованы на C, а другие на Python (например, с помощью наследования)?
-
Вопросы о Python в Windows
- Как запустить программу Python в Windows?
- Как сделать сценарии Python исполняемыми?
- Почему иногда запуск Python занимает так много времени?
- Как создать исполняемый файл из сценария Python?
- Файл
*.pyd— это то же самое, что DLL? - Как встроить Python в приложение Windows?
- Как запретить редакторам вставлять знаки табуляции в исходный код Python?
- Как проверить нажатие клавиши без блокировки?
- Как устранить ошибку отсутствия api-ms-win-crt-runtime-l1-1-0.dll?
- Вопросы о графическом интерфейсе пользователя
- Вопросы «Почему Python установлен на моём компьютере?»
- Глоссарий
- Об этих документах
- Работа с ошибками
- Авторские права
- История и лицензия
© 2001–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.11/contents.html