programmirovanie-na-python-3-podrobnoe-rukovodstvo-mark-summerfield-2009

Учебник.

Марк Саммерфилд "Программирование на Python 3" Символ-Плюс, 2009 год, 608 стр. (6,87 мб. djvu + примеры 379 кб.)

Книга представляет собой подробное руководство по программированию на Python 3. В ней представлены все необходимые данные по третьей версии популярного языка, более совершенной чем предыдущая. Как и в любом учебнике, так и в этой книге материал подается начиная с основных конструкций и типов данных языка, не обошлось и без вездесущего, - "Hello World", но это так - дань традиции.

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

Если вы изучаете программирование на Python 3, то это подробное руководство послужит учебником, а в дальнейшем может быть использовано как справочник. Весь текст в книге построен на примерах. где автор разъясняет работу кода программ. Весь код примеров был протестирован в работе на Python 3, для Windows, Linux и Mac OS X. Книга рассчитана как на начинающих программистов (любителей, студентов), так и на профессионалов и может служить им справочным руководством.
ISBN 978-5-93286-161-5
Оглавление.

1. Быстрое введение в процедурное программирование 21
Создание и запуск программ на языке Python 22
"Золотой запас" Python 27
Составляющая №1: Типы данных 28
Составляющая №2: ссылки на объекты 29
Составляющая №3: коллекции данных 32
Составляющая №4: логические операции 36
Составляющая №5: инструкции управления потоком выполнения 40
Составляющая №6: арифметические операторы 45
Составляющая №7: ввод/вывод 49
Составляющая №8: создание и вызов функций 52
Примеры 55
bigdigits.py 55
generate_grid py 58
В заключение 61
Упражнения 64

2. Типы данных 68
Идентификаторы и ключевые слова 68
Целочисленные типы 72
Целые числа 73
Логические значения 76
Тип чисел с плавающей точкой 77
Числа с плавающей точкой 78
Комплексные числа 81
Числа типа Decimal 82
Строки 84
Сравнение строк 88
Получение срезов строк 89
Операторы и методы строк 92
Форматирование строк с помощью метода str.format() 100
Кодировки символов 112
Примеры 116
quadratic.py 116
csv2html.py 119
В заключение 124
Упражнения 126

3. Типы коллекций 129
Последовательности 130
Кортежи 130
Именованные кортежи 134
Списки 135
Множества 144
Тип set 145
Тип frozenset 150
Отображения 151
Словари 151
Словари со значениями по умолчанию 161
Обход в цикле и копирование коллекций 163
Итераторы, функции и операторы для работы
с итерируемыми объектами 163
Копирование коллекций 173
Примеры 175
generate_usemames.py 176
etatistice.py 180
В заключение 184
Упражнения 186

4. Управляющие структуры и функции 188
Управляющие структуры 188
Условное ветвление 189
Циклы 190
Обработка исключений 192
Перехват и возбуждение исключений 193
Собственные исключения 198
Собственные функции 202
Имена и строки документирования 207
Распаковывание аргументов и параметров 210
Доступ к переменным в глобальной области видимости 213
Лямбда-функции 215
Утверждения 217
Пример: make_html_8keleton.py 218
В заключение 225
Упражнения 226

5. Модули 229
Модули и пакеты 230
Пакеты 234
Собственные модули 237
Обзор стандартной библиотеки языка Python 248
Обработка строк 249
Работа с аргументами командной строки 250
Математические вычисления и числа 252
Время и дата 253
Алгоритмы и типы коллекций 254
Форматы файлов, кодировки и сохранение данных 256
Работа с файлами, каталогами и процессами 260
Работа с сетями и Интернетом 263
XML 265
Прочие модули 267
В заключение 268
Упражнение 271

6. Объектно-ориентированное программирование 273
Объектно-ориентированный подход 274
Объектно-ориентированные концепции и терминология 275
Собственные классы 279
Атрибуты и методы 280
Наследование и полиморфизм 286
Использование свойств для управления
доступом к атрибутам 288
Создание полных и полностью интегрированных
типов данных 291
Собственные классы коллекций 306
Создание классов, включающих коллекции 306
Создание классов коллекций посредством агрегирования 314
Создание классов коллекций посредством наследования 321
В заключение 329
Упражнения 332

7. Работа с файлами 334
Запись и чтение двоичных данных 340
Консервирование с возможным сжатием 341
Неформатированные двоичные данные
с возможным сжатием 348
Запись и синтаксический анализ текстовых файлов 356
Запись текста 356
Синтаксический анализ текста 358
Синтаксический анализ текста с помощью
регулярных выражений 361
Запись и синтаксический анализ файлов XML 364
Деревья элементов 365
DOM (Document Object Model - объектная
модель документа) 368
Запись файла XML вручную 372
Синтаксический анализ файлов XML с помощью SAX
(Simple API for XML - упрощенный API для XML) 373
Произвольный доступ к двоичным данным в файлах 376
Универсальный класс BinaryRecordFile 377
Пример: классы в модуле BikeStock 386
В заключение 390
Упражнения 391

8. Усовершенствованные приемы программирования 394
Улучшенные приемы процедурного программирования 395
Ветвление с использованием словарей 395
Выражения-генераторы и функции-генераторы 397
Динамическое выполнение программного кода
и динамическое импортирование 400
Локальные и рекурсивные функции 409
Декораторы функций и методов 414
Аннотации функций 418
Улучшенные приемы объектно-ориентированного
программирования 421
Управление доступом к атрибутам 422
Функторы 426
Менеджеры контекста 428
Дескрипторы 432
Декораторы классов 438
Абстрактные базовые классы 441
Множественное наследование 449
Метаклассы 452
Функциональное программирование 457
Частично подготовленные функции 460
Пример: Valid.py 461
В заключение 464
Упражнения 465

9.Процессы и потоки 467
Делегирование работы процессам 468
Делегирование работы потокам выполнения 473
Пример: многопоточная программа поиска слова 475
Пример: многопоточная программа поиска
дубликатов файлов 479
В заключение 484
Упражнения 486

10. Сети 488
Клиент TCP 490
Сервер TCP 496
В заключение 504
Упражнения 505

11. Программирование приложений баз данных 508
Вазы данных DBM 509
Базы данных SQL 513
В заключение 521
Упражнение 522

12. Регулярные выражения 524
Язык регулярных выражений в Python 525
Символы и классы символов 525
Квантификаторы 527
Группировка и сохранение 530
Проверки и флаги 533
Модуль для работы с регулярными выражениями 538
В заключение 549
Упражнения 550

13. Введение в программирование графического интерфейса 552
Программы в виде диалога 556
Программы с главным окном 563
Создание главного окна 564
Создание собственного диалога 576
В заключение 579
Упражнения 579
Эпилог 582
Алфавитный указатель 584

Скачать книгу бесплатно6,87 мб. djvu Скачать примеры бесплатно379 кб.