пол бэрри изучаем программирование на python pdf
Изучаем программирование на Python
Скачать книгу
О книге «Изучаем программирование на Python»
Для тех, кто только начинает изучать программирование, важно, чтобы материал по такой сложной теме был подан максимально простым языком. Когда нужно изучить работу с Python, то для этого как нельзя лучше подойдет книга Пола Бэрри. О ней существует много отзывов, и читатели говорят, что для новичка она будет очень кстати. Впрочем, и тем, кто уже что-то знает об этом языке программирования, она тоже будет полезна.
Эта книга расскажет об основах языка программирования. С ее помощью каждый читатель узнает, как установить программу, а затем работать со списками и структурировать данные. Здесь главы о хранении и использовании, обработке баз данных. Читатели узнают, как создать веб-приложение, работать со структурами и функциями, как использовать в работе контекстные менеджеры, декораторы и генераторы. Материал подан в интересном стиле, есть приятные и полезные иллюстрации, вставки для любознательных, содержащие дополнительную информацию. Учебник имеет нестандартное оформление, что вызывает приятные эмоции, а информация в нем изложена нетрадиционным образом, что дает больше возможностей для развития навыков.
Произведение было опубликовано в 2016 году издательством Эксмо. Книга входит в серию «Мировой компьютерный бестселлер». На нашем сайте можно скачать книгу «Изучаем программирование на Python» в формате pdf или читать онлайн. Рейтинг книги составляет 3.81 из 5. Здесь так же можно перед прочтением обратиться к отзывам читателей, уже знакомых с книгой, и узнать их мнение. В интернет-магазине нашего партнера вы можете купить и прочитать книгу в бумажном варианте.
Изучаем программирование на Python, Бэрри П., 2017
По кнопке выше «Купить бумажную книгу» можно купить эту книгу с доставкой по всей России и похожие книги по самой лучшей цене в бумажном виде на сайтах официальных интернет магазинов Лабиринт, Озон, Буквоед, Читай-город, Литрес, My-shop, Book24, Books.ru.
По кнопке «Найти похожие материалы на других сайтах» можно искать похожие материалы на других сайтах.
On the buttons above you can buy the book in official online stores Labirint, Ozon and others. Also you can search related and similar materials on other sites.
Изучаем программирование на Python, Бэрри П., 2017.
Надоело продираться через дебри малопонятных самоучителей по программированию? С этой книгой вы без труда усвоите азы Python и научитесь работать со структурами и функциями. В ходе обучения вы создадите свое собственное веб-приложение и узнаете, как управлять базами данных, обрабатывать исключения, пользоваться контекстными менеджерами, декораторами и генераторами. Все это и многое другое — во втором издании «Изучаем программирование на Python».
Перебор последовательности объектов.
Мы ранее говорили, что будем использовать цикл for. Цикл for отлично подходит для управления итерациями, когда их количество известно заранее. (Если количество итераций неизвестно, мы рекомендуем использовать цикл while, но обсудим детали этого альтернативного способа организации цикла потом, когда он нам действительно понадобится). На этом этапе нам нужен for, поэтому посмотрим его действие в командной строке >>>.
Существует три типичных сценария использования for. Давайте определим, какой из них подходит нам больше.
Пример использования 1. Цикл for, представленный ниже, принимает список чисел и перебирает его по одному элементу, выводя текущее значение на экран. Вот как это происходит: цикл for в каждой итерации присваивает число из списка переменной цикла, которой в этом коде дано имя i.
Оглавление.
1 Основы. Начнем поскорее.
2 Списки. Работа с упорядоченными данными.
3 Структурированные данные. Работа со структурированными данными.
4 Повторное использование. Функции и модули.
5 Построение веб-приложения. Возвращение в реальный мир.
6 Хранение и обработка данных. Где хранить данные.
7 Использование базы данных. Используем DB-API в Python.
8 Немного о классах. Абстракция поведения и состояния.
9 Протокол управления контекстом. Подключение к инструкции with.
10 Декораторы функций. Обертывание функций.
11 Обработка исключений. Что делать, когда что-то идет не так.
11¾ Немного о многопоточности. Обработка ожидания.
12 Продвинутые итерации. Безумные циклы.
A Установка. Установка Python.
B Рythonanywhere. Развертывание веб-приложения.
C Топ-10 тем, которые мы не рассмотрели. Всегда есть чему поучиться.
D Топ-10 проектов, которые мы не рассмотрели. Еще больше инструментов, библиотек и модулей.
E Присоединяйтесь. Сообщество Python.
Изучаем программирование на Python, Бэрри П., 2017
К сожалению, на данный момент у нас невозможно бесплатно скачать полный вариант книги.
Но вы можете попробовать скачать полный вариант, купив у наших партнеров электронную книгу здесь, если она у них есть наличии в данный момент.
Также можно купить бумажную версию книги здесь.
Изучаем программирование на Python, Бэрри П., 2017.
Надоело продираться через дебри малопонятных самоучителей по программированию? С этой книгой вы без труда усвоите азы Python и научитесь работать со структурами и функциями. В ходе обучения вы создадите свое собственное веб-приложение и узнаете, как управлять базами данных, обрабатывать исключения, пользоваться контекстными менеджерами, декораторами и генераторами. Все это и многое другое — во втором издании «Изучаем программирование на Python».
Перебор последовательности объектов.
Мы ранее говорили, что будем использовать цикл for. Цикл for отлично подходит для управления итерациями, когда их количество известно заранее. (Если количество итераций неизвестно, мы рекомендуем использовать цикл while, но обсудим детали этого альтернативного способа организации цикла потом, когда он нам действительно понадобится). На этом этапе нам нужен for, поэтому посмотрим его действие в командной строке >>>.
Существует три типичных сценария использования for. Давайте определим, какой из них подходит нам больше.
Пример использования 1. Цикл for, представленный ниже, принимает список чисел и перебирает его по одному элементу, выводя текущее значение на экран. Вот как это происходит: цикл for в каждой итерации присваивает число из списка переменной цикла, которой в этом коде дано имя i.
Оглавление.
1 Основы. Начнем поскорее.
2 Списки. Работа с упорядоченными данными.
3 Структурированные данные. Работа со структурированными данными.
4 Повторное использование. Функции и модули.
5 Построение веб-приложения. Возвращение в реальный мир.
6 Хранение и обработка данных. Где хранить данные.
7 Использование базы данных. Используем DB-API в Python.
8 Немного о классах. Абстракция поведения и состояния.
9 Протокол управления контекстом. Подключение к инструкции with.
10 Декораторы функций. Обертывание функций.
11 Обработка исключений. Что делать, когда что-то идет не так.
11¾ Немного о многопоточности. Обработка ожидания.
12 Продвинутые итерации. Безумные циклы.
A Установка. Установка Python.
B Рythonanywhere. Развертывание веб-приложения.
C Топ-10 тем, которые мы не рассмотрели. Всегда есть чему поучиться.
D Топ-10 проектов, которые мы не рассмотрели. Еще больше инструментов, библиотек и модулей.
E Присоединяйтесь. Сообщество Python.
По кнопкам выше и ниже «Купить бумажную книгу» и по ссылке «Купить» можно купить эту книгу с доставкой по всей России и похожие книги по самой лучшей цене в бумажном виде на сайтах официальных интернет магазинов Лабиринт, Озон, Буквоед, Читай-город, Литрес, My-shop, Book24, Books.ru.
По кнопке «Найти похожие материалы на других сайтах» можно найти похожие материалы на других сайтах.
On the buttons above and below you can buy the book in official online stores Labirint, Ozon and others. Also you can search related and similar materials on other sites.
О книге:
Надоело продираться через дебри малопонятных самоучителей по программированию? С этой книгой вы без груда усвоите азы Python и научитесь работать со структурами и функциями. В ходе обучения вы создадите свое собственное веб-приложение и узнаете, как управлять базами данных, обрабатывать исключения, пользоваться контекстными менеджерами, декораторами и генераторами. Все это и многое другое – во втором издании «Изучаем программирование на Python».
Надоело продираться через дебри малопонятных самоучителей по программированию? С этой книгой вы без груда усвоите азы Python и научитесь работать со структурами и функциями. В ходе обучения вы создадите свое собственное веб-приложение и узнаете, как управлять базами данных, обрабатывать исключения, пользоваться контекстными менеджерами, декораторами и генераторами. Все это и многое другое – во втором издании «Изучаем программирование на Python».
1 Основы. Начнем поскорее 37
2 Списки. Работа с упорядоченными данными 83
3 Структурированные данные. Работа со структурированными данными 131
4 Повторное использование. Функции и модули 181
5 Построение веб-приложения. Возвращение в реальный мир 231
6 Хранение и обработка данных. Где хранить данные 279
7 Использование базы данных. Используем DB-API в Python 317
8 Немного о классах. Абстракция поведения и состояния 345
9 Протокол управления контекстом. Подключение к инструкции with 371
10 Декораторы функций. Обертывание функций 399
11 Обработка исключений. Что делать, когда что-то идет не так 449
11¾ Немного о многопоточности. Обработка ожидания 497
12 Продвинутые итерации. Безумные циклы 513
A Установка. Установка Python 557
B Рythonanywhere. Развертывание веб-приложения 565
C Топ-10 тем, которые мы не рассмотрели. Всегда есть чему поучиться 575
D Топ-10 проектов, которые мы не рассмотрели.
Еще больше инструментов, библиотек и модулей 587
E Присоединяйтесь. Сообщество Python 599
Изучаем программирование на Python
Обучающий практикум из серии: «Head First».
Бэрри П. «Изучаем программирование на Python» Эксмо, 2017 год, 624 стр., Head First, 2 издание, ISBN: 978-5-699-98595-1; (PDF)
Это второе издание книги «Изучаем программирование на Python» вышедшее в серии Head First и знакомой многим программистам и разработчикам. Автор учебного пособия проведет вас начиная от азов Python (IDLE, стандартная библиотека, работа с данными, функции, декораторы, генераторы, обработка исключений и мн. другое) до создания и развертывания собственного веб-приложения с использованием DB-API, а также фреймворка Flask.
Книга ориентирована на Python 3 и не использует вторую версию языка, изобилует примерами и заданиями, призванными помочь быстро обучится практическим методам работы. Издание ориентировано на всех, кто увлекается программированием, а также тех кто хочет изучать и практически использовать конкретно Python.
Содержание.
1. Основы. Начнем поскорее 37
Назначение окон IDLE 40
Выполнение кода, одна инструкция за раз 44
Функции + модули = стандартная библиотека 45
Встроенные структуры данных 49
Вызов метода возвращает результат 50
Принятие решения о запуске блока кода 51
Какие варианты может иметь «if»? 53
Блоки кода могут содержать встроенные блоки 54
Возвращение в командную оболочку Python 58
Экспериментируем в оболочке 59
Перебор последовательности объектов 60
Повторяем определенное количество раз 61
Применим решение задачи № 1 к нашему коду 62
Устраиваем паузу выполнения 64
Генерация случайных чисел на Python 66
Создание серьезного бизнес-приложения 74
Отступы вас бесят? 76
Попросим интерпретатор помочь с функцией 77
Эксперименты с диапазонами 78
Код из главы 1 82
2. Списки. Работа с упорядоченными данными 83
Числа, строки… и объекты 84
Встречайте: четыре встроенные структуры данных 86
Словарь: неупорядоченная структура данных 88
Множество: структура данных, не позволяющая дублировать объекты 89
Создание литеральных списков 91
Если работаете с фрагментом кода большим, чем пара строк, используйте редактор 93
Заполнение списка во время выполнения 94
Проверка принадлежности с помощью in 95
Удаление объектов из списка 98
Добавление элементов в список 100
Вставка элементов в список 101
Как скопировать структуру данных 109
Списки расширяют нотацию с квадратными скобками 111
Со списками можно использовать диапазоны 112
Начало и конец диапазона в списках 114
Работаем со срезами в списке 116
Использование цикла «for» со списками в Python 122
Срезы в деталях 124
Когда не нужно использовать списки 127
Код из главы 2 128
3. Структурированные данные. Работа со структурированными данными 131
Словари хранят пары ключ/значение 132
Как определяются словари в коде 134
Порядок добавления НЕ поддерживается 135
Выбор значений с помощью квадратных скобок 136
Работа со словарями во время выполнения программы 137
Изменение счетчика 141
Итерации по записям в словарях 143
Итерации по ключам и значениям 144
Итерации по словарям с использованием items 146
Насколько динамичны словари? 150
Предотвращение ошибок KeyError во время выполнения 152
Проверка вхождения с помощью in 153
Не забывайте инициализировать ключ перед использованием 154
Замена in на not in 155
Работа с методом setdefault 156
Создаем множества эффективно 160
Использование методов множеств 161
Сделаем пример с кортежами 168
Комбинирование встроенных структур данных 171
Доступ к данным, хранящимся в сложных структурах 177
Код из главы 3 179
4. Повторное использование. Функции и модули 181
Повторное использование кода с помощью функций 182
Представляем функции 183
Вызываем функции 186
Функции могут принимать аргументы 190
Возврат одного значения 194
Возврат более одного значения 195
Вспомним встроенные структуры данных 197
Создание универсальной и полезной функции 201
Создание другой функции 202
Задание значений по умолчанию для аргументов 206
Позиционные и именованные аргументы 207
Повторим, что мы узнали о функциях 208
Запуск Python из командной строки 211
Создание необходимых файлов установки 215
Создание файла дистрибутива 216
Установка пакетов при помощи «pip» 218
Демонстрация семантики вызова по значению 221
Демонстрация семантики вызова по ссылке 222
Установка инструментов разработчика для тестирования 226
Соответствует ли наш код рекомендациям в PEP 8? 227
Разбираемся с сообщениями об ошибках 228
Код из главы 4 230
5. Построение веб-приложения. Возвращение в реальный мир 231
Python: что вы уже знаете 232
Чего мы хотим от нашего веб-приложения? 236
Давайте установим Flask 238
Как работает Flask? 239
Первый запуск веб-приложения Flask 240
Создание объекта веб-приложения Flask 242
Декорирование функции URL 243
Запуск функций веб-приложения 244
Размещение функциональности в Веб 245
Построение HTML-формы 249
Шаблоны связаны с веб-страничками 252
Отображение шаблонов из Flask 253
Отображение HTML-формы веб-приложения 254
Подготовка к запуску кода с шаблонами 255
Коды состояния HTTP 258
Обработка отправленных данных 259
Оптимизация цикла редактирование/остановка/запуск/проверка 260
Доступ к данным HTML-формы с помощью Flask 262
Использование данных запроса в веб-приложении 263
Выводим результат в виде HTML 265
Подготовка веб-приложения к развертыванию в облаке 274
Код из главы 5 277
6. Хранение и обработка данных. Где хранить данные 279
Работа с данными из веб-приложения 280
Python позволяет открывать, обрабатывать и закрывать 281
Чтение данных из существующего файла 282
Лучше «with», чем открыть, обработать, закрыть 284
Просмотр журнала в веб-приложении 290
Исследуем исходный код страницы 292
Пришло время экранировать (ваши данные) 293
Просмотр всего журнала в веб-приложении 294
Журналирование отдельных атрибутов веб-запроса 297
Журналирование данных в одну строку с разделителями 298
Вывод данных в читаемом формате 301
Генерируем читаемый вывод с помощью HTML 310
Встраиваем логику отображения в шаблон 311
Создание читаемого вывода с помощью Jinjia2 312
Текущее состояние кода нашего веб-приложения 314
Задаем вопросы о данных 315
Код из главы 6 316
7. Использование базы данных. Используем DB-API в Python 317
Включаем поддержку баз данных в веб-приложении 318
Задача 1. Установка сервера MySQL 319
Введение в Python DB-API 320
Задача 2. Установка драйвера базы данных MySQL для Python 321
Установка MySQL–Connector/Python 322
Задача 3. Создание базы данных и таблиц для веб-приложения 323
Выбираем структуру для журналируемых данных 324
Убедимся, что таблица готова к использованию 325
Задача 4. Программирование операций с базой данных и таблицами 332
Хранение данных — только половина дела 336
Как организовать код для работы с базой данных? 337
Подумайте, что вы собираетесь использовать повторно 338
А что с тем импортом? 339
Вы видели этот шаблон раньше 341
Неприятность не такая уж неприятная 342
Код из главы 7 343
8. Немного о классах. Абстракция поведения и состояния 345
Подключаемся к инструкции «with» 346
Объектно-ориентированный пример 347
Создание объектов из классов 348
Объекты обладают общим поведением, но не состоянием 349
Расширяем возможности CountFromBy 350
Вызов метода: подробности 352
Добавление метода в класс 354
Важность «self» 356
Область видимости 357
Добавляйте к именам атрибутов приставку «self» 358
Инициализация атрибута перед использованием 359
Инициализация атрибутов в «init» с двойными подчеркиваниями 360
Инициализация атрибутов в «__init__» 361
Представление CountFromBy 364
Определение представления CountFromBy 365
Определение целесообразных умолчаний для CountFromBy 366
Классы: что мы знаем 368
Код из главы 8 369
9. Протокол управления контекстом. Подключение к инструкции with 371
Выбираем лучший способ повторного использования кода для работы с БД 372
Управление контекстом с помощью методов 374
Вы уже видели, как действует диспетчер контекста 375
Создание нового класса диспетчера контекста 376
Инициализация класса параметрами соединения с базой данных 377
Выполняем настройку в «__enter__» 379
Выполнение завершающего кода с использованием «__exit__» 381
Повторное обсуждение кода веб-приложения 384
Вспомним функцию «log_request» 386
Изменение функции «log_request» 387
Вспомним функцию «view_the_log» 388
Изменился не только этот код 389
Изменение функции «view_the_log» 390
Ответы на вопросы о данных 395
Код из главы 9 396
10. Декораторы функций. Обертывание функций 399
Веб-сервер (не ваш компьютер) запускает ваш код 402
Поддержка сеансов в Flask позволяет хранить состояние 404
Поиск по словарю позволяет получить состояние 405
Организация входа в систему с помощью сеансов 410
Выход из системы и проверка состояния 413
Передаем функцию в функцию 422
Вызываем переданную функцию 423
Принимаем список аргументов 426
Обработка списка аргументов 427
Принимаем словарь аргументов 428
Обработка словаря аргументов 429
Принимаем любое количество аргументов любого типа 430
Создание декоратора функции 433
Последний шаг: работа с аргументами 437
Использование декоратора 440
Назад к ограничению доступа к /viewlog 444
Код из главы 10 446
11. Обработка исключений. Что делать, когда что-то идет не так 449
Базы данных не всегда доступны 454
Веб-атаки — настоящая боль 455
Ввод-вывод бывает медленным (иногда) 456
Вызовы функций могут оканчиваться неудачей 457
Всегда используйте try для кода с высоким риском ошибок 459
Одна инструкция try, но несколько except 462
Обработчик любых исключений 464
Узнаем об исключениях из «sys» 466
Универсальный обработчик, повторение 467
Назад к нашему веб-приложению 469
Тихая обработка исключений 470
Обработка других ошибок в базе данных 476
Избегайте тесных связей в коде 478
Модуль DBcm, еще раз 479
Создание собственного исключения 480
Что еще может пойти не так с «DBcm»? 484
Обработка SQLError отличается 487
Возбуждаем SQLError 489
Подведение итогов: добавление надежности 491
Как быть с ожиданием? Есть варианты… 492
Код из главы 11 493
11. 3/4. Немного о многопоточности. Обработка ожидания 497
Ожидание: что делать? 498
Как выполняются запросы к базе данных? 499
Инструкции INSERT и SELECT базы данных отличаются 500
Делаем несколько дел сразу 501
Не грустим: используем потоки 502
В первую очередь: не паниковать 506
Не грустим: Flask нам поможет 507
Надежно ли ваше веб-приложение сейчас? 510
Код из главы 11. 3/4 511
12. Продвинутые итерации. Безумные циклы 513
Чтение данных CSV в виде списков 515
Чтение CSV-данных в словарь 516
Удаление пробелов и разбивка исходных данных 518
Будьте внимательны при составлении цепочек из вызовов методов 519
Преобразование данных в нужный формат 520
Преобразование в словарь списков 521
Шаблон со списками 526
Преобразование шаблонного кода в генераторы 527
Подробнее о генераторах 528
Определение генератора словарей 530
Расширенные генераторы с фильтрами 531
Преодолеваем сложности, как это принято в Python 535
Генератор множеств в действии 541
А что с «генераторами кортежей»? 543
Круглые скобки вокруг кода == Генератор 544
Использование генератора списков для обработки URL 545
Использование выражения-генератора для обработки URL 546
Определим, что должна делать функция 548
Ощути силу функций-генераторов 549
Исследуем функцию-генератор 550
Последний вопрос 554
Код из главы 12 555
Пора прощаться… 556
A. Установка. Установка Python 557
Установка Python 3 в Windows 558
Проверим правильность установки Python 3 в Windows 559
Расширяем набор инструментов Python 3 в Windows 560
Установка Python 3 в Mac OS X (macOS) 561
Проверка и настройка Python 3 в Mac OS X 562
Установка Python 3 в Linux 563
B. РythonAnywhere. Развертывание веб-приложения 565
Шаг 0: Небольшая подготовка 566
Шаг 1: Регистрируемся в PythonAnywhere 567
Шаг 2: Выгружаем файлы в облако 568
Шаг 3: Извлекаем и устанавливаем код 569
Шаг 4: Создаем начальное веб-приложение, 1 из 2 570
Шаг 4: Создаем начальное веб-приложение, 2 из 2 571
Шаг 5: Настраиваем веб-приложение 572
Шаг 6: Запускаем облачное веб-приложение! 573
C. Топ-10 тем, которые мы не рассмотрели. Всегда есть чему поучиться 575
1. Что насчет Python 2? 576
2. Виртуальное программное окружение 577
3. Больше объектной ориентированности 578
4. Форматирование строк и тому подобное 579
5. Сортировка 580
6. Больше из стандартной библиотеки 581
7. Параллельное выполнение кода 582
8. Графический интерфейс с использованием Tkinter (и веселье с turtle) 583
9. Работа не завершена, пока не проверена 584
10. Отладка, отладка, отладка 585
D. Топ-10 проектов, которые мы не рассмотрели. Еще больше инструментов, библиотек и модулей 587
1. Альтернативы командной строке >>> 588
2. Альтернативы интегрированной среде IDLE 589
3. Jupyter Notebook: IDE на основе веб 590
4. Наука работы с данными 591
5. Технологии веб-разработки 592
6. Работа с данными в веб 593
7. Еще больше источников данных 594
8. Инструменты для программирования 595
9. Kivy: наш выбор в номинации «Лучший проект всех времен» 596
10. Альтернативные реализации 597
E. Присоединяйтесь. Сообщество Python 599
BDFL: Benevolent Dictator for Life — великодушный пожизненный диктатор 600
Толерантное сообщество: уважение к многообразию 601
Подкасты Python 602
Дзен Python 603
Дзен Python от Тима Петерса 604