Об авторе
Благодарности
Введение
Часть I. Язык программирования Python
Глава 1. Вводное руководство
Вызов интерпретатора
Переменные и арифметические выражения
Условные операторы
Операции вводавывода с файлами
Строки
Списки
Кортежи
Множества
Словари
Итерации и циклы
Функции
Генераторы
Сопрограммы
Объекты и классы
Исключения
Модули
Получение справки
Глава 2. Лексические и синтаксические соглашения
Структура строк и отступы
Идентификаторы и зарезервированные слова
Числовые литералы
Строковые литералы
Контейнеры
Операторы, разделители и специальные символы
Строки документирования
Декораторы
Кодировка символов в исходных текстах
Глава 3. Типы данных и объекты
Терминология
Идентичность и тип объекта
Подсчет ссылок и сборка мусора
Ссылки и копии
Объекты первого класса
Встроенные типы представления данных
Встроенные типы представления структурных элементов программы
Встроенные типы данных для внутренних механизмов интерпретатора
Поведение объектов и специальные методы
Глава 4. Операторы и выражения
Операции над числами
Операции над последовательностями
Форматирование строк
Дополнительные возможности форматирования
Операции над словарями
Операции над множествами
Комбинированные операторы присваивания
Оператор доступа к атрибутам (.)
Оператор вызова функции ()
Функции преобразования
Логические выражения и значения истинности
Равенство и идентичность объектов
Порядок вычисления
Условные выражения
Глава 5. Структура программы и управление потоком выполнения
Структура программы и ее выполнение
Выполнение по условию
Циклы и итерации
Исключения
Менеджеры контекста и инструкция with
Отладочные проверки и переменная __debug__
Глава 6. Функции и функциональное программирование
Функции
Передача параметров и возвращаемые значения
Правила видимости
Функции как объекты и замыкания
Декораторы
Генераторы и инструкция yield
Сопрограммы и выражения yield
Использование генераторов и сопрограмм
Генераторы списков
Выражениягенераторы
Декларативное программирование
Оператор lambda
Рекурсия
Строки документирования
Атрибуты функций
Функции eval(), exec() и compile()
Глава 7. Классы и объектно-ориентированное программирование
Инструкция class
Экземпляры класса
Правила видимости
Наследование
Полиморфизм, или динамическое связывание и динамическая типизация
Статические методы и методы классов
Свойства
Дескрипторы
Инкапсуляция данных и частные атрибуты
Управление памятью объектов
Представление объектов и связывание атрибутов
__slots__
Перегрузка операторов
Типы и проверка принадлежности к классу
Абстрактные базовые классы
Метаклассы
Глава 8. Модули, пакеты и дистрибутивы
Модули и инструкция import
Импортирование отдельных имен из модулей
Выполнение модуля как самостоятельной программы
Путь поиска модулей
Загрузка и компиляция модулей
Выгрузка и повторная загрузка модулей
Пакеты
Распространение программ и библиотек на языке Python
Установка сторонних библиотек
Глава 9. Ввод и вывод
Чтение параметров командной строки
Переменные окружения
Файлы и объекты файлов
Стандартный ввод, вывод и вывод сообщений об ошибках
Инструкция print
Функция print()
Интерполяция переменных при выводе текста
Вывод с помощью генераторов
Обработка строк Юникода
Вводвывод Юникода
Сохранение объектов и модуль pickle
Глава 10. Среда выполнения
Параметры интерпретатора и окружение
Интерактивные сеансы
Запуск приложений на языке Python
Файлы с настройками местоположения библиотек
Местоположение пользовательских пакетов
Включение будущих особенностей
Завершение программы
Глава 11. Тестирование, отладка, профилирование и оптимизация
Строки документирования и модуль doctest
Модульное тестирование и модуль unittest
Отладчик Python и модуль pdb
Профилирование программы
Настройка и оптимизация
Часть II. Стандартная библиотека Python
Глава 12. Встроенные функции
Встроенные функции и типы
Встроенные исключения
Встроенные предупреждения
Модуль future_builtins
Глава 13. Службы Python времени выполнения
Модуль atexit
Модуль copy
Модуль gc
Модуль inspect
Модуль marshal
Модуль pickle
Модуль sys
Модуль traceback
Модуль types
Модуль warnings
Модуль weakref
Глава 14. Математика
Модуль decimal
Модуль fractions
Модуль math
Модуль numbers
Модуль random
Глава 15. Структуры данных, алгоритмы и упрощение программного кода
Модуль abc
Модуль array
Модуль bisect
Модуль collections
Модуль contextlib
Модуль functools
Модуль heapq
Модуль itertools
Модуль operator
Глава 16. Работа с текстом и строками
Модуль codecs
Модуль re
Модуль string
Модуль struct
Модуль unicodedata
Глава 17. Доступ к базам данных
Прикладной интерфейс доступа к реляционным базам данных
Модуль sqlite3
Модули доступа к базам данных типа DBM
Модуль shelve
Глава 18. Работа с файлами и каталогами
Модуль bz2
Модуль filecmp
Модуль fnmatch
Модуль glob
Модуль gzip
Модуль shutil
Модуль tarfile
Модуль tempfile
Модуль zipfile
Модуль zlib
Глава 19. Службы операционной системы
Модуль commands
Модули ConfigParser и configparser
Модуль datetime
Модуль errno
Модуль fcntl
Модуль io
Модуль logging
Модуль mmap
Модуль msvcrt
Модуль optparse
Модуль os
Модуль os.path
Модуль signal
Модуль subprocess
Модуль time
Модуль winreg
Глава 20. Потоки и многозадачность
Основные понятия
Параллельное программирование и Python
Модуль multiprocessing
Модуль threading
Модуль queue (Queue)
Сопрограммы и микропотоки
Глава 21. Работа с сетью и сокеты
Основы разработки сетевых приложений
Модуль asynchat
Модуль asyncore
Модуль select
Модуль socket
Модуль ssl
Модуль SocketServer
Глава 22. Разработка интернетприложений
Модуль ftplib
Пакет http
Модуль smtplib
Пакет urllib
Пакет xmlrpc
Глава 23. Вебпрограммирование
Модуль cgi
Модуль cgitb
Поддержка WSGI
Пакет wsgiref
Глава 24. Обработка и представление данных в Интернете
Модуль base64
Модуль binascii
Модуль csv
Пакет email
Модуль hashlib
Модуль hmac
Модуль HTMLParser
Модуль json
Модуль mimetypes
Модуль quopri
Пакет xml
Глава 25. Различные библиотечные модули
Службы интерпретатора Python
Обработка строк
Модули для доступа к службам операционной системы
Сети
Обработка и представление данных в Интернете
Интернационализация
Мультимедийные службы
Различные модули
Часть III. Расширение и встраивание
Глава 26. Расширение и встраивание интерпретатора Python
Модули расширений
Встраивание интерпретатора Python
Модуль ctypes
Дополнительные возможности расширения и встраивания
Jython и IronPython
Приложение A. Python 3
Кто должен использовать Python 3?
Новые возможности языка
Типичные ошибки
Перенос программного кода и утилита 2to3
Алфавитный указатель