Вы изучили основы программирования и, двигаясь дальше, остановили выбор на Python? Тогда эта статья – для вас!

Python – мультипарадигмальный кроссплатформенный язык программирования, получивший популярность в таких IT-гигантах, как Google, Apple и Microsoft. Благодаря простому минималистичному синтаксису и мощному ядру, «питон» считается одним из самых хорошо читаемых и производительных языков программирования в мире.

Мы собрали здесь самые полезные книги, которые помогут вам овладеть этим языком и научиться применять его на практике в различных сферах. Эта подборка будет полезна как для начинающих, так и для опытных программистов.

Python для начинающих

Майк МакГрат. Python. Программирование для начинающих

Не знаете, с чего начать своё обучение «питону»? Обратите внимание на эту книгу. Это руководство написано специально для новичков, которые хотят изучить этот язык. Начав с основ, вы перейдёте к освоению объектно-ориентированного программирования, создания CGI-сценариев для обработки web-форм, узнаете, как создавать графические приложения с оконным интерфейсом и распространять их на другие устройства.

Этот учебник поможет вам пройти все уровни изучения языка – от установки интерпретатора до запуска и отладки полноценных программ.

Дэвид Ашер и Марк Лутц. Learning Python

Эта книга является отличным введением в язык Python, зарекомендовавшем себя во всём мире. С её помощью вы быстро научитесь писать эффективный и качественный код. Если вы только начинаете учиться программированию или же имеете опыт работы с другими языками – эта книга для вас. Здесь найдётся не только теория, но и разнообразные задания, упражнения и тесты, которые будут очень полезны для освоения Python 2 и 3. Опытные пользователи могут познакомиться с некоторыми продвинутыми «фичами» языка, которыми пользуются даже не все специалисты.

Зед Шоу. Learn Python the Hard Way

«Изучение Python трудным путём» – так переводится название этой книги. Однако она тоже написана для начинающих. Осваивать программирование вам придётся на практике – тут собраны 52 упражнения, проработав которые поймёте Python, научитесь писать программы и устранять свои ошибки.

В книге освещены следующие темы:

  • Установка окружения
  • Организация кода
  • Базовая математика
  • Переменные
  • Строки и текст
  • Взаимодействие с пользователями
  • Работа с файлами
  • Циклы и логика
  • Структуры данных
  • Разработка программ
  • ООП
  • Наследование и композиция
  • Модули, классы и объекты
  • Пакеты
  • Отладка
  • Автоматизация тестирования
  • Разработка игр
  • Веб-разработка

Эрик Мэттс. Python Crash Course

Эта книга точно и подробно расскажет вам о языке Python. Первая половина книги знакомит читателя с основными понятиями языка: списками, словарями, классами и циклами. Вы учитесь создавать легко читаемый чистый код и тестировать программы. Вторая половина – практические задания по созданию 3 проектов: простого веб-приложения, программы для визуализации данных и аркадной игры типа Space Invaders.

Майкл Доусон. Программируем на Python

Здесь наряду с теорией изучения Python вы познакомитесь с реальными проектами игр и приложений, в которых были использованы возможности языка. Кроме того, эта книга научит не только языку Python, но и основам программирования. Для начинающих – самое то.

Пол Бэрри. Изучаем программирование на Python

Увлекательно и доступно поданная информация позволит вам быстро изучить основы языка. Но книга не ограничивается только этим – вы научитесь веб-разработке, работе с SQL, обработке данных и Google App Engine, а также созданию приложений для Android и многому другому.

Марк Лутц. Python Pocket Reference

Это не учебник и не руководство, а мини-справочник по Python 3.4 и 2.7 с самыми нужными сведениями о различных аспектах языка. Здесь рассматриваются следующие темы:

  • Встроенные типы объектов
  • Выражения и синтаксис создания и обработки объектов
  • Функции и модули
  • ООП
  • Встроенные функции, исключения и атрибуты
  • Методы перегрузки операторов
  • Популярные модули и расширения
  • Опции командной строки и инструменты для разработки
  • Подсказки
  • Python SQL Database API

Кеннет Рейтц. Таня Шлюссер. Автостопом по Python

В этой книге не рассматриваются основы языка «питон», она знакомит вас с инструментами и рекомендациями по кодированию, принятыми в Open Source сообществе.

В первой части книги описываются текстовые редакторы и программные среды, в которых можно писать Python-программы, а также интерпретаторы для различных систем. Вторая часть рассказывает о стиле «кодинга», принятом в OS-сообществе. В третьей – представлен обзор многих необходимых для опенсорсных проектов библиотек.

Python для продвинутых

Владимир Дронов, Николай Прохоренок. Python 3 и PyQt 5. Разработка приложений

Пособие по Python для продвинутых пользователей. Здесь подробно изучаются типы данных, операторы, циклы, условия, регулярные выражения, функции, инструменты ООП, работа с файлами и каталогами, часто используемые модули стандартной библиотеки. Помимо прочего, рассматриваются база данных SQLite, интерфейс доступа к ней и способы получения данных из всемирной паутины.

Вторая часть рассказывает о библиотеке PyQt 5, которая позволяет создавать на «питоне» приложения с графическим интерфейсом. Тут описаны средства обработки сигналов и событий, настройки свойств окна, разработки многопоточных приложений, рассказано об основных компонентах (кнопках, списках, таблицах, меню и др.), вариантах их расположения внутри окна, инструменты для работы с БД, мультимедиа, печати документов и экспорта их в формат PDF.

Алекс Мартелли, Анна Мартелли Равенскрофт, и Дэвид Ашер. Python Cookbook

Изучали Python 2, но желаете перейти на Python 3? Или хотите адаптировать старый код под новую версию? Данная книга научит вас этому. В ней собрано множество практических примеров на Python 3.3, каждый из них подробно разбирается.

Вот список тем, поднимаемых в этом пособии:

  • Структуры данных и алгоритмы
  • Строки и текст
  • Числа, даты и время
  • Итераторы и генераторы
  • Файлы и операции чтения/записи
  • Кодирование и обработка данных
  • Функции
  • Классы и объекты
  • Метапрограммирование
  • Модули и пакеты
  • Веб-программирование
  • Конкурентность
  • Системное администрирование
  • Тестирование и отладка
  • Си-расширения

Бонус: руководство по безболезненному переводу проекта со 2-ой версии «питона» на 3-ю.

Миша Горелик, Ян Озвальд. High Performance Python

Хотите ускорить работу ваших программ, написанных на Python? Поверьте, их можно реально ускорить. С этим руководством вы научитесь находить лазейки в коде и ускорять работу приложений, оперирующих большими объёмами данных.

Python. Анализ данных и машинное обучение

Дж. Вандер Плас. Python для сложных задач. Наука о данных и машинное обучение

В этом пособии Python представлен как инструмент для решения задач, связанных с вычислениями и обработкой больших объёмов данных. Читатель научится использовать инструментарий исследования данных «Питона» для их понимания, хранения и оперирования ими.

В каждой главе рассматриваются библиотеки для работы с данными.

  1. IPython и Jupyter
  2. NumPy
  3. Pandas
  4. Matplotlib
  5. Scikit-Learn

Самир Мадаван. Mastering Python for Data Science

Изучите методы анализа данных при помощи языка Python. Прочитав эту книгу, вы научитесь многому, а конкретно:

  • управлять данными
  • решать задачи науки о данных
  • создавать высококлассные визуализации
  • применять линейные регрессии для оценки связей между переменными
  • создавать рекомендательные системы
  • обрабатывать большие данные

Разработка игр

Аль Суэигарт. Making Games with Python & Pygame

Изучив эту книгу, вы научитесь использовать библиотеку Pygame – инструмент для разработки игр на языке Python. В каждой главе книги приводится полный исходный код игры и объясняются принципы его разработки.

Читайте это пособие, пробуйте создавать игры, и, возможно, именно вы станете новым Гейбом Ньюэллом. А вдруг?

Прочее

Аль Суэигарт. Automate the Boring Stuff with Python

Надоедает постоянно переименовывать сотни файлов, обновлять ячейки таблиц и заниматься прочей изматывающей рутиной? Научитесь автоматизировать эти процессы с книгой «Automate the Boring Stuff with Python». Вы сможете создавать программы, которые справятся с нудной работой быстро и эффективно. Пособие расскажет вам, как реализовать:

  • поиск заданного текста в файлах
  • создание, обновление, перемещение и переименование файлов и папок
  • поиск и скачивание данных в сети
  • обновление и форматирование данных в Excel-таблицах
  • разделение, слияние и шифрование PDF-файлов
  • рассылка писем и уведомлений
  • заполнение онлайн-форм

На этом и остановимся. Учитесь, развивайтесь – и через какое-то время, может, мы напишем именно о вашем проекте.