Применяем Python на практике: книги по прикладному использованию языка, изданные в 2019 году

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

Эта подборка будет интересна уже опытным питонистам, поскольку для понимания материала нужны хорошие знания языка.

Изучение робототехники с помощью Python

Обложка книги: "Изучение робототехники с помощью Python"

Автор: Лентин Джозеф. Язык: русский.


Автор книги, Лентин Джозеф, занимается робототехникой на коммерческом уровне. Он руководит компанией, которая разрабатывает ПО для роботов.

Эта книга — практическое руководство по созданию автономного мобильного робота. Для его проектирования и создания пользовательского интерфейса будет использоваться Python.

Книга предназначена для инженеров-робототехников. Помимо знания самого языка Python, вам пригодится хорошее знание ROS, OpenCV, OpenNI и PCL.

Прикладной анализ текстовых данных на Python

Обложка книги "Прикладной анализ текстовых данных на Python"

Авторы: Бенджамин Бенгфорт, Ребекка Билбро, Тони Охеда. Язык: русский.


Из этой книги вы узнаете о том, как применять методы машинного обучения для анализа текста. Вы будете использовать такие библиотеки Python, как Scikit-Learn, NLTK, Gensim, spaCy, NetworkX и Yellowbrick.

Книга предназначена для Python-программистов, интересующихся темами обработки естественного языка и машинного обучения. Все разбираемые примеры — на английском. Поэтому желательно, чтобы читатель владел этим языком хотя бы на базовом уровне. Разумеется, эта книга — не для начинающих питонистов. Читатель может не разбираться в машинном обучении, но навыки программирования на Python у него должны быть.

Text Analytics with Python

Обложка книги "Text Analytics with Python"

Автор: Dipanjan Sarkar. Язык: английский.

Dipanjan Sarkar — data scientist в Red Hat. Он консультировал несколько стартапов, а также некоторые солидные компании вроде Intel. Имеет диплом по data science и разработке программ, но при этом — горячий сторонник самообразования и открытых онлайн-курсов.

Вот уже несколько лет Dipanjan Sarkar занимается применением на практике методов машинного обучения, обработки естественного языка, глубокого обучения и статистики.

Что касается самой книги, автор старался сделать ее как можно более понятной и структурированной. Из первых глав вы узнаете, что такое естественный язык, а также — как можно обрабатывать текстовые данные при помощи Python. В последующих главах разбираются интересные проблемы анализа текста.

Цель книги — познакомить читателя со сферой анализа текста и NLP, а также вооружить необходимыми инструментами и знаниями для решения практических проблем в этих сферах.

Изучение сложных систем с помощью Python

Обложка книги "Изучение сложных систем с помощью Python"

Автор: Аллен Б. Дауни. Язык: русский.


Сложные системы — это физические и социальные системы со множеством взаимодействующих компонентов. Наука о них находится на стыке математики, информатики и естествознания.

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

Примеры в книге написаны на Python, так что читатель должен владеть этим языком, а также разбираться в ООП. Автор применяет библиотеки NumPy, SciPy и NetworkX, и если вы с ними знакомы, это облегчит вам чтение (но знание их не обязательно). Кроме того предполагается, что читатель не совсем далек от математики (в объяснениях применяются логарифмы и векторы).

Аллен Дауни — опытный автор: его перу принадлежат несколько бесплатных учебников по Python и науке о данных. Также он ведет блог о байесовской вероятности и статистике (Probably Overthinking It).

Вероятностное программирование на Python

Обложка книги "Вероятностное программирование на Python"

Автор: Дэвидсон-Пайлон Кэмерон. Язык: русский.


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

Обычно книги, посвященные байесовскому выводу, переполнены математикой. По словам Кэмерона, когда он сам пытался разобраться в теме, ему было невероятно сложно — и это несмотря на глубокие математические знания. Свою книгу он решил написать в другом ключе, делая упор на вероятностное программирование.

Из-за намеренного обхода сложных математических тем книга дает лишь базовые знания про байесовские методы. Но если вас они интересуют с сугубо прикладной точки зрения, вам этот материал прекрасно подойдет.

Practical Cryptography in Python

Обложка книги "Practical Cryptography in Python"

Авторы: Seth James Nielson, Christopher K. Monson. Язык: английский.

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

В начале книги рассмотрены алгоритмы хэширования, симметричное и асимметричное шифрование. Далее авторы переходят к цифровым сертификатам, цифровым подписям и кодам аутентификации сообщений. В последних главах рассказывается, как все это используется вместе — в интересных и полезных комбинациях.

Любопытно, что авторы также приводят примеры плохого применения криптографии, чтобы показать читателям важность лучших подходов.

В конце глав вы найдете упражнения на закрепление материала.

DevOps in Python

Обложка книги "DevOps in Python"

Автор: Moshe Zadka. Язык: английский.

Аспекты применения Python, интересные SRE/DevOps-специалистам, довольно редко рассматриваются в книгах. Им приходится полагаться на официальную документацию и посты в блогах. Моше Задка решил заполнить этот пробел.

Из книги «DevOps in Python» вы узнаете, как использовать всю мощь языка Python для автоматизации операций.

Начинается все с разбора самой установки Python. Ведь есть не один способ сделать это! Автор рассматривает плюсы и минусы каждого.

Далее Моше Задка переходит к рассмотрению сторонних библиотек из экосистемы Python. Вы узнаете, как использовать эти пакеты, как построить рабочие процессы, когда их нужно обновлять и какие инструменты при этом используются.

Помимо библиотек, в книге рассматривается работа виртуальных машин, сервисов и контейнеров.

Книга рассчитана на специалистов, знающих Python.

Python Network Programming

Обложка книги "Python Network Programming"

Авторы: Abhishek Ratan, Eric Chou, Pradeeban Kathiravelu. Язык: английский.

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

Вы научитесь создавать простые сетевые клиенты, SDN и NFV системы, а также расширять свои сети при помощи Mininet. Авторы рассказывают, как использовать Python для DevOps и как пользоваться опенсорсными инструментами для тестирования, обеспечения безопасности и анализа сетей.

К концу чтения книги вы будете знать, как разрабатывать клиенты веб-API, email-клиенты, SSH и FTP. Кроме того, вы научитесь анализировать уязвимости в безопасности сети.

Math adventures with Python

Обложка книги "Math adventures with Python"

Автор: Peter Farrell. Язык: английский.

Иллюстрированное пособие для изучения математики при помощи кода.

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

Все это вы будете делать при помощи Python. Эта книга не о том, как обойтись без изучения математики. Она лишь предлагает новейшие и интереснейшие инструменты, которые помогут не только отточить навыки программирования, но и понять его связь с математикой, искусством, науками и технологиями.

Для каждого из проектов, представленных в книге, вы будете писать код с нуля. Допуская ошибки и исправляя их, вы достигнете более глубокого понимания каждого блока кода.

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

Math for Programmers

Обложка книги "Math for Programmers"

Автор: Paul Orland. Язык: английский.

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

Представьте, что хорошее вино было бы одним из школьных предметов. Вероятно, на уроках вы изучали бы техники ферментации и приемы выращивания винограда. В качестве домашних заданий иногда предписывалось бы выпить 3-4 бокала вина. Иногда оно было бы вкусным, иногда — нет, но в любом случае, это скорее отвратило бы вас и от вина, и от виноделия. То же и с математикой. Традиционные методы преподавания способны отбить вкус к ней.

В этой книге, как вы уже поняли из названия, для изложения математических концепций применяется программирование на Python и реальные примеры (больше никаких вопросов «Ну и где мне это пригодится в жизни?!»).


Итак, мы рассмотрели десять книг, посвященных использованию языка Python в самых разных направлениях. Надеемся, вы найдете в этой подборке пару книг, которые вас заинтересуют.