I. Язык программирования Python 21
1. Вводное руководство 23
Вызов интерпретатора 23
Переменные и арифметические выражения 25
Условные операторы 28
Операции ввода-вывода с файлами 29
Строки 30
Списки 32
Кортежи 33
Множества 35
Словари 36
Итерации и циклы 37
Функции 39
Генераторы 40
Сопрограммы 41
Объекты и классы 43
Исключения 44
Модули 46
Получение справки 47
2. Лексические и синтаксические соглашения 48
Структура строк и отступы 48
Идентификаторы и зарезервированные слова 49
Числовые литералы 50
Строковые литералы 51
Контейнеры 54
Операторы, разделители и специальные символы 54
Строки документирования 55
Декораторы 55
Кодировка символов в исходных текстах 56
3. Типы данных и объекты 57
Терминология 57
Идентичность и тип объекта 58
Подсчет ссылок и сборка мусора 59
Ссылки и копии 60
Объекты первого класса 61
Встроенные типы представления данных 63
Встроенные типы представления
структурных элементов программы 75
Встроенные типы данных
для внутренних механизмов интерпретатора 80
Поведение объектов и специальные методы 84
4. Операторы и выражения 96
Операции над числами 96
Операции над последовательностями 99
Форматирование строк 103
Дополнительные возможности форматирования 105
Операции над словарями 108
Операции над множествами 109
Комбинированные операторы присваивания 109
Оператор доступа к атрибутам () 110
Оператор вызова функции () 110
Функции преобразования 111
Логические выражения и значения истинности 112
Равенство и идентичность объектов 113
Порядок вычисления 113
Условные выражения 114
5. Структура программы и управление потоком выполнения 116
Структура программы и ее выполнение 116
Выполнение по условию 117
Циклы и итерации 117
Исключения 120
Менеджеры контекста и инструкция with 126
Отладочные проверки и переменная_debug 128
6.Функции и функциональное программирование 130
Функции 130
Передача параметров и возвращаемые значения 133
Правила видимости 134
Функции как объекты и замыкания 136
Декораторы 139
Генераторы и инструкция yield 141
Сопрограммы и выражения yield 143
Использование генераторов и сопрограмм 146
Генераторы списков 148
Выражения-генераторы 150
Декларативное программирование 151
Оператор lambda 152
Рекурсия 153
Строки документирования 154
Атрибуты функций 155
Функции eval(), exec() и compile() 156
7. Классы и объектно-ориентированное программирование 158
Инструкция class 158
Экземпляры класса 159
Правила видимости 160
Наследование 160
Полиморфизм, или динамическое связывание и динамическая типизация 165
Статические методы и методы классов 165
Свойства 167
Дескрипторы 170
Инкапсуляция данных и частные атрибуты 171
Управление памятью объектов 172
Представление объектов и связывание атрибутов 176
__slots 177
Перегрузка операторов 178
Типы и проверка принадлежности к классу 180
Абстрактные базовые классы 182
Метаклассы 184
8. Модули, пакеты и дистрибутивы 189
Модули и инструкция import 189
Импортирование отдельных имен из модулей 191
Выполнение модуля как самостоятельной программы 193
Путь поиска модулей 194
Загрузка и компиляция модулей 195
Выгрузка и повторная загрузка модулей 196
Пакеты 197
Распространение программ и библиотек на языке Python..200
Установка сторонних библиотек 203
9. Ввод и вывод 205
Чтение параметров командной строки 205
Переменные окружения 207
Файлы и объекты файлов 207
Стандартный ввод, вывод и вывод сообщений об ошибках 211
Инструкция print 212
Функция print() 213
Интерполяция переменных при выводе текста 213
Вывод с помощью генераторов 214
Обработка строк Юникода 215
Ввод-вывод Юникода 218
Сохранение объектов и модуль pickle 223
10. Среда выполнения 226
Параметры интерпретатора и окружение 226
Интерактивные сеансы 229
Запуск приложений на языке Python 230
Файлы с настройками местоположения библиотек 231
Местоположение пользовательских пакетов 232
Включение будущих особенностей 232
Завершение программы 234
11. Тестирование, отладка, профилирование и оптимизация 236
Строки документирования и модуль doctest 236
Модульное тестирование и модуль unittest 239
Отладчик Python и модуль pdb 242
Профилирование программы 247
Настройка и оптимизация 248
II. Стандартная библиотека Python 257
12. Встроенные функции 259
Функции и типы 259
Исключения 273
Предупреждения 278
Модуль future_builtins 279
13. Службы Python времени выполнения 280
atexit 280
copy 280
gc 281
inspect 283
marshal 288
pickle 289
sys 292
traceback 300
types 301
warnings 303
weakref 305
14. Математика 309
decimal 309
fractions 317
math 319
numbers 321
random 322
15. Структуры данных, алгоритмы и упрощение программного кода 326
abc 326
array 328
bisect 331
collections 332
contextlib 339
functools 339
heapq 341
itertools 342
operator 346
16. Работа с текстом и строками 349
codecs 349
re 354
string 362
struct 366
unicodedata 369
17. Доступ к базам данных 375
Прикладной интерфейс доступа к реляционным базам данных 375
Модуль sqlite3 383
Модули доступа к базам данных типа DBM 391
Модуль shelve 393
18. Работа с файлами и каталогами 395
bz2 395
filecmp 396
fnmatch 398
glob 399
gzip 400
shutil 400
tarfile 402
tempfile 407
М zipfile 409
Мzlib 413
19. Службы операционной системы 415
commands 416
ConfigParser и configparser 416
datetime 421
errno 430
fcntl 434
io 437
logging 445
mmap 463
msvcrt 467
optparse 469
os 475
os.path 496
signal 499
subprocess 503
time 507
winreg 511
20. Потоки и многозадачность 516
Основные понятия 516
Параллельное программирование и Python 518
multiprocessing 519
threading 545
queue (Queue) 556
Сопрограммы и микропотоки 559
21. Работа с сетью и сокеты 561
Основы разработки сетевых приложений 561
asynchat 564
asyncore 568
select 572
socket 586
ssl 608
SocketServer 611
22. Разработка интернет-приложений 619
Модуль ftplib 619
Пакет http 623
Модуль smtplib 639
Пакет urllib 640
Пакет xmlrpc 651
23. Веб-программирование 660
cgi 662
cgitb 670
Поддержка WSGI 671
Пакет wsgiref 673
24. Обработка и представление данных в Интернете 677
base64 677
binascii 680
csv 681
Пакет email 685
hashlib 694
hmac 695
HTMLParser 696
json 699
mimetypes 703
quopri 704
Пакет xml 706
25. Различные библиотечные модули 725
Службы интерпретатора Python 725
Обработка строк 726
Модули для доступа к службам операционной системы 727
Сети 727
Обработка и представление данных в Интернете 728
Интернационализация 728
Мультимедийные службы 728
Различные модули 729
III. Расширение и встраивание 731
26. Расширение и встраивание интерпретатора Python 733
Модули расширений 734
Встраивание интерпретатора Python 754
Модуль ctypes 759
Дополнительные возможности расширения и встраивания 768
Jython и IronPython 769
Приложение A. Python 3 770
Кто должен использовать Python 3? 770
Новые возможности языка 771
Типичные ошибки 780
Перенос программного кода и утилита 2to3 788
Алфавитный указатель 794
Добавить комментарий