Лучшие книги по Python 2021-2022 года: для новичков и профи
Есть мнение, что люди начали читать меньше и всё чаще многие потребляют уже готовый контент в виде роликов на YouTube или сокращённых вариантов различных произведений. Но это вряд ли, ведь если бы люди не читали книги, могли бы тогда развиваться отечественные и зарубежные сервисы для любителей чтения? К примеру, LitRes, Bookmate и другие.
И да, в IT-команде Сбера много книголюбов с самыми разными предпочтениями. А поскольку мы на Хабре, то поговорим сегодня о технической литературе. Точнее, о Python и лучших книгах по этому языку для профи, программистов среднего уровня и начинающих. Подборка ― уже под катом.

В помощь начинающим
Среди нас много тех, кто только начал свой путь в изучении Python. И это круто, ведь столько всего нового ещё предстоит узнать! Благо, есть немало книг для новичков в мире Python.
Марк Лутц «Изучаем Python»
В нашей команде есть те, кто считают эту книгу must have для разработчиков, и это вполне справедливо, ведь она в доступном виде показывает особенности Python и преимущества языка. Автор действительно постарался, так что книга получилась полезной, с теорией и большим количеством практического контента.
Преимущества:
- Техническая литература отличается от художественной (побудем тут капитанами). Некоторые моменты не так легко запомнить, поэтому авторы в конце каждого раздела приводят своеобразное «домашнее задание». Это вопросы по прочитанному разделу плюс практические упражнения.
- Благодаря тому, что автор не наливал «воду», в книге коротко и весьма понятно объясняется, что такое типы объектов, функции, модули, есть подробный рассказ об инструментарии языка. Сказать, что автор ответил на всё, нельзя, но на очень многое ― точно.
- О популярности книги и качестве изложения свидетельствует то, что она постоянно переиздаётся. Как только накапливается критический объём обновлений языка ― автор выпускает новую версию.
Недостатки:
- Практически нет, единственное ― в русскоязычных изданиях последнего времени появилось довольно много опечаток, так что будьте внимательны к примерам. Лучший способ выйти из положения ― читать на английском.
Эрик Мэтиз «Изучаем Python. Программирование игр, визуализация данных, веб-приложения»
Ещё одна отличная книга для начинающих. Есть как российская, так и оригинальная англоязычная версии. Как и в книге, о которой мы рассказывали выше, здесь представлена и теория, и практика. Причём, что логично, вначале идёт объяснение, после чего читатель волен проверить всё на практике. В целом, отличная книга, но было бы ещё интересно услышать и мнение пользователей Хабра.
Преимущества:
- Автор неплохо объясняет, в русскоязычном варианте есть хороший перевод, так что можете быть уверены в том, что книга действительно поможет разобраться в сложностях и нюансах языка.
- Автор не забрасывает техническими терминами, понимая, что книгу будут читать новички, объяснение ведётся по веками проверенной схеме ― от простого к сложному.
- Даётся интересное «домашнее задание», которое необходимо выполнять по примерам и объяснениям текущей главы или раздела.
- Книга не скучная: в ней есть множество нюансов, которые могут увлечь любознательного новичка.
Недостатки:
- Как и в предыдущем случае, их почти нет. Иногда есть опечатки, не совсем корректный перевод, но таких случаев, к счастью, немного.
Эл Свейгарт «Автоматизация рутинных задач с помощью Python. Практическое руководство для начинающих»
Важная книга для тех, кто решил облегчить себе жизнь, поставив на службу Python и собственные мозговые извилины. Один из лучших вариантов ― это как раз Эл Свейгарт, который весьма неплохо всё объясняет по поводу автоматизации рутинных задач. Это здорово экономит время как разработчика, так и компании, в которой он работает. Время, как известно, ― деньги, так что книга поможет заработать, прямо или косвенно.
Достоинства:
- Большое количество кейсов из личного опыта автора.
- То, что показано в книге, может пригодиться в любой момент, ненужной информации практически нет.
Недостатки:
- Если есть, то расскажите о них, мы не обнаружили.
Майкл Доусон «Программируем на Python»
Ещё одна отличная книга для начинающих, которая вместе с остальными, предложенными выше, действительно может многому научить. А почему? А потому, что в книге автор использует проверенный приём для привлечения читателей из мира технологий ― он приводит в основном кейсы из разработки игр.
Судя по отзывам, многим читателям книга, что называется, «зашла», положительных рецензий очень много. В книге 12 глав, в каждой из них разбирается минимум одна игра. В трёх последних главах описываются графические интерфейсы, графика, звук и анимация.
Ну и плюс подход у автора весьма оригинальный ― даже вместо Hello World он предлагает печатать Game Over.
Преимущества:
- Всё рассказывается с практической точки зрения, так что если вы уже знакомы с теорией, можно сразу же приступать к чтению.
- В книге отлично объясняется, как работает язык и что он может, несмотря на то, что большинство кейсов показываются на примере игр.
Недостатки:
- Их в целом нет, если не считать то, что не каждый разработчик мечтает о создании игр. Ну а поскольку в книге практически нет других кейсов, то стоит взвесить все за и против перед приобретением книги.
Книги для среднего уровня
Дэн Бейдер «Чистый Python. Тонкости программирования для профи»

Книгу рекомендуем читать в оригинале, поскольку уже с перевода названия начинаются неточности. Оригинальное название ― Python tricks, там про «профи» ничего нет. Ну и содержимое предназначено для разработчиков среднего уровня. Профи тоже могут найти что-то полезное для себя, но в основном это всё же материал для программистов, которые уже не новички, но ещё и не профи.
Преимущества:
- Практически всё содержимое книги может оказаться крайне полезным разработчику в той или иной ситуации. Те самые tricks приводятся из практики самого автора, и они реально нужны. Для того чтобы понимать написанное, достаточно уметь разбираться с основами языка, имея относительно небольшой опыт разработки.
Недостатки:
- Неточность перевода, поэтому повторим совет: если знаете английский, то книгу рекомендуем читать в оригинале.
Бизли и Джонс «Python. Книга рецептов»
В книге раскрываются многие нюансы, которые нужны разработчикам если не каждый день, то частенько. В частности, авторы приводят рецепты, которые охватывают разные темы языка, плюс практические задачи, у которых весьма обширный спектр применения. Вместе с теорией авторы приводят и практику, то есть примеры кода, которые помогают понять, что к чему.
Преимущества:
- В относительно простой форме подан сложный материал, который можно быстро усвоить как раз благодаря подаче.
- Есть примеры ― участки кода с пояснениями, с которыми можно работать самостоятельно.
Недостатки:
Гарри Персиваль «Python. Разработка на основе тестирования»
Одна из лучших книг, которая есть в библиотеке многих программистов. В ней раскрываются нюансы методологии разработки через тестирование (TDD). Читателю рассказывают о том, как писать и выполнять тесты для создания практически любого участка приложения. Также автор показывает, как разрабатывать минимальный объём программного кода, требуемого для прохождения тестов.
В целом, книга по сложности описываемых моментов ближе к начальному уровню. Так что её можно считать важной для тех, кто уже не новичок, но ещё и не особо опытный разработчик, как-то так.
Преимущества:
- Автор даёт практические знания, в частности учит работать с разными инструментами и фреймворками, включая Django, Selenium, Git, jQuery и Mock.
Недостатки:
Книги для профи
Дж. Вандер Плас «Python для сложных задач. Наука о данных и машинное обучение»
В этой книге уже рассматриваются весьма сложные и объёмные задачи, которые довольно часто встречаются профессионалам в ходе работы. Издание представляет собой руководство по вычислительным и статистическим методам для Data Science. Идеально подходит для разработчиков, у которых уже есть неплохой опыт, а также для тех, кто желает усилить опыт и знания в Data Science.
Автор уделяет особое внимание работе с данными разных типов, включая анализ ситуации, получение ответов, создание статистических моделей и машинное обучение.
Достоинства:
- В книге много практических примеров, включая считывание разных форматов в скрипт, преобразование, очистку данных и манипуляцию ими, визуализацию данных определённого типа.
Недостатки:
- Нет, или мы не смогли их найти.
Ян Эрик Солем «Программирование компьютерного зрения на Python»
Ещё одна крутая книга, которая заточена на решение специфических задач, а именно ― компьютерного зрения. Она открывает перед разработчиком новый мир, полный методов распознавания объектов, трёхмерной реконструкции, обработки стереоизображений, AR, VR и других нужных и важных технологий.
Достоинства:
- Большое количество практических примеров, которые увязывают в единое целое теорию и практику.
Недостатки:
- Как и в предыдущем случае, мы не смогли их обнаружить.
В целом, на этом всё. Если у вас есть любимые книги по Python, которые не попали в подборку, то кидайте в комментариях название и автора, обсудим! Кроме того, если читали что-то из того, что в подборку попало, давайте тоже поговорим, ведь мнения могут быть очень разными, а в дискуссии можно выяснить много полезного для себя.
Какие книги купить для изучения python
Змеиный язык – находка для программиста, правда, речь не о том, который из Гарри Поттера, а о том, который Python. Подружиться с программированием не так уж сложно, главное – грамотно начать и двигаться постепенно. Самый адекватный способ попробовать свои силы – освоить Python. Это максимально доступный, понятный и простой язык, позволяющий без месяцев изучения создавать креативные и интересные приложения. Идеален для начинающего программиста.
Мы поделимся подборкой из 8 классных книг, помогающих быстро освоить змеиный язык, научиться создавать графику, писать коды для текстовых редакторов и понять другие нюансы Python. Это не просто сборник пособий, а подборка, проверенная практическим методом и одобренная практикующими программистами. Интересные книги найдутся как для новичков, так и продвинутых пользователей.
Эта книга — самый популярный ответ на вопрос — с чего начать. Да, переиздание уже слегка устарело, но для базового знакомства и изучения основных понятий подходит отлично! Рассмотрено все — от базовых понятий до частных случаев. Может показаться, что многовато воды, однако так материал легче читается.
Помимо теории в книге собраны толковые практические задания, так что чтение понравится и более-менее продвинутым пользователям. После изучения гарантированы основательные знания в написании эффективных кодов.
2. Думай на языке Python: думай как программист (Allen B. Downey)
Базовый материал для начинающих, своеобразный «навигатор» по пути от дилетанта до программиста среднего уровня. Труд можно считать фундаментальным с раскрытием множества обширных тем. Нет скучной теории, с первых страниц происходит погружение в маленькие задачи и программы, которые постепенно, от главы до главы разрастаются и усложняются. Получается практический курс с логическими пояснениями.
Проще не бывает! Книга написана феноменально простым языком, все понятия объяснены добротно и полно, непонятных моментов в программировании на Python просто не останется.
Вместо сотен хвалебных од скажем, что данный труд используется как пособие по изучению змеиного языка программирования в Калифорнийском и Бостонском Университетах, а также в Гарварде. Полезные сведения там найдутся и для продвинутых пользователей.
Отличное введение в Python с массой примеров кода, а также вариантов использования стандартной библиотеки. Книга оценена программистами по всему миру и может считать «настольным трудом» для начинающего программиста. Переиздание 3 обновлено по сравнению с предыдущим примерно на 75% и включает информацию об отличиях 2 и 3 версии.
5. Изучаем Python: тяжелый способ (Zed Shaw)
Один из лучших базовых гайдов, однако качественного перевода данного труда пока нет, придется довольствоваться исходным текстом. Но книга того стоит, она учит трем основным вещам в программировании: читать код, писать код и вырабатывает внимание к деталям и умение «видеть» различия. Последовательное выполнение задач из книги поможет получить и закрепить основные навыки программирования.
Плюс книги – четкая и удобная структура с короткими, но емкими главами, информация легко запоминается и логично изложена. В книге чуть более 50 упражнений, которые служат логическим продолжением друг друга.
6. Программирование на Python (Mark Lutz. 4-е издание)
Плавный переход от теории к практике. В книге собраны практические методы программирования и советы для написания программ. Описаны способы решения наиболее типичных задач, по полочкам разложены сферы и способы применения Python.
В общем, если с теорией разобрались – этот труд поможет понять практический аспект и превратить теоретические знания в практические навыки. Написано легко и доступно.
Делаем шаг вперед в познании змеиного языка. После получения базовых навыков можно взяться за эту книгу, где рассмотрены 59 методик написания высокоэффективного и супер-надежного кода. Данное пособие учит писать в истинно «змеином стиле».
Приведены простейшие способы решения популярных задач с примерами реального кода и развернутыми пояснениями. Это отличное пополнение навыков, которыми пользуются даже опытные программисты.
Продолжаем углублять знания, теперь разбираемся со встроенными и сторонними библиотеками. В книге представлен немного иной взгляд на змеиный язык. Полезные советы и интересные «фишки» можно использовать, даже не придерживаясь функционально стиля программирования.
Бонус
Это «шпаргалка», которая должна быть всегда под рукой, чтобы не искать нужные нюансы и определения в разных учебниках и курсах. Все кратко, сжато и по существу. Типы данных, стандартные библиотеки, встроенные функции и исключения – найдется все, что может пригодиться.
Обязательная книга в библиотеке новичка и профи, ведь держать всю информацию в голове попросту невозможно.
И совет от «бывалых»: начинать знакомство с языком программирования все же лучше из официальной документации. Именно так вы поймете «что к чему» и уже в прочтении книг по программированию не будет возникать пресловутых «белых пятен».
Помните, лучший способ постичь что-то – попробовать, на собственных ошибках и успехах учиться гораздо полезнее, удобнее, а главное – эффективнее. Пишите, ищите ошибки, исправляйте и снова пишите – так формируется условный рефлекс и теория превращается в закрепленные опытом знания.
И второе ценное наблюдение – не читайте все подряд, получив базовые понимания, сразу выбирайте необходимый профиль, тогда обучение будет эффективнее и быстрее.
Ещё больше информации о Python на нашем шестимесячном курсе «Профессия: Разработчик». Присоединяйтесь!
7 полезных книг по Python для старта и развития
Попросили коллег порекомендовать книги по изучению Python и собрали подборку. Пригодится и начинающим, и опытным специалистам.

«Изучаем Python»
Автор: Марк Лутц
Уровень: первый том — для начинающих, второй том — для продвинутых

Бесконечно подробный в вопросах Python справочник. Это и плюс, и минус, но лучшего справочника просто нет.
«Изучаем Python» — это два тома технических подробностей и качественных примеров.
Первый том знакомит с основными конструкциями, парадигмами и модулями.
- Типы и операции — объекты в Python, основные типы и структуры данных.
- Операторы и синтаксис — основные операторы (присваивания, выражений, вывода) и основные конструкции (условия, циклы).
- Функции и генераторы — общая теория про часто-используемые функции, области видимости, генераторы и включения.
- Модули и пакеты — основные сведения, чек-лист по написанию собственных модулей (на Python).
Второй том полезен для продвинутых. Повествование начинается с объектно-ориентированного программирования и заканчивается на теме метаклассов.
- Классы и объектно-ориентированное программирование — общая теория, детали в реализации классов, перегрузка операций и другое.
- Исключения и инструменты — общая теория, детали обработки исключений, объекты исключений, проектирование с использованием исключений.
- Более сложные темы — Unicode и байтовые строки, управляемые атрибуты, декораторы, метаклассы.
Есть издание, объединяющее в себе два тома. Хотите системно изучить Python — вперед. Но запаситесь терпением: это хоть и структурированный, но сложный в восприятии учебник.
Где купить или скачать
Книгу можно приобрести на сайте издательства. На данный момент заказать оригинальную бумажную версию из-за рубежа проблематично. Однако эту же книгу можно купить во многих книжных магазинах.
«Python для сетевых инженеров»
Автор: Наталья Самойленко
Уровень: начинающие

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

Отдельное внимание автор уделила работе с базами данных. Есть целый раздел про SQL, SQLite, модуль sqlite3, а после него — практикум на закрепление материала.
Кроме специфических разделов в книге описаны модули для веб-программистов. Например, про шаблонизатор веб-страниц Jinja.
Где купить или скачать
Это бесплатный учебник, он доступен на сайте.
Присоединяйтесь к команде Selectel
Ищем единомышленников, чтобы делать команды и процессы еще круче.
«Простой Python. Современный стиль программирования»
Автор: Билл Любанович
Уровень: начинающие

Если сравнивать с трудами Лутца, у книги идеальный размер: 350 страниц против 1600. Нет перегруза листингами с кодом, все примеры очень простые для понимания.
Эта книга для тех, кто только начинает изучать как программирование, так и сам Python. В основе — самые базовые разделы про типы данных, коллекции и основные конструкции. А предпоследняя глава — про concurrency и сети, в которой автор рассказывает про очереди, процессы и потоки.
Кроме того, в книге есть дополнительные разделы про применение Python в науке. Сопровождаются они не только интересными, но и прикладными примерами.

Где купить или скачать
В бумажном и электронном вариантах можно найти здесь.
«Python. К вершинам мастерства»
Автор: Лучано Ромальо
Уровень: смешанный

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

Кроме того, книга насыщена подробными листингами с кодом и комментариями. Для некоторых это минус: учебник может показаться «нудным». Для других — плюс: такие описания помогают разобраться, как писать эффективный код.
- Модель данных в Python — основные типы данных: строки, числа, булевы значения.
- Структуры данных — списки, кортежи, словари, множества, специальные операторы для работы со структурами (срезы, распаковщики), numpy-массивы, всевозможные методы и многое другое.
- Функции как объекты — основы теории, пакеты для функционального программирования, декораторы и замыкания.
- Объектно-ориентированные идиомы — введение объектов через ссылки, работа с классами, парадигма ООП, наследования и перегразка операторов.
- Поток управления — контекстные менеджеры, генераторы, сопрограммы и запуск программ в параллельных потоках через concurrent.futures и asyncio.
- Метапрограммирование — свойства, дескрипторы атрибутов, декораторы классов и метаклассы.
Где купить или скачать
В бумажном и электронном вариантах можно найти здесь. На данный момент заказать оригинальную бумажную версию из-за рубежа проблематично. Однако эту же книгу можно купить во многих книжных магазинах.
«Python. Книга рецептов»
Авторы: Дэвид Бизли, Брайан К. Джонс
Уровень: смешанный

В книге почти нет теории, она полностью состоит из примеров. На каждой странице — задача, решение и обсуждение.

Если лучше воспринимаете формат «шпаргалок», это ваш вариант. В книге — рецепты почти на все случаи жизни разработчика. Есть даже инструкции по работе с потоками, памятью и ресурсами CPU.
Вот, по нашему мнению, самые интересные рецепты:
- Написание простого модуля расширения на C — для тех, кто хочет писать «шустрые» модули.
- Заставляем ваши программы выполняться быстрее — пригодиться, если дополнительные расширения на C не нужны, а ускорить программу нужно: автор рассказывает, как с помощью простых приемов — чистки кода и изменения его парадигмы — увеличить производительность программы.
- Установка лимитов на использование памяти CPU — рецепт для настоящих системных администраторов; описывает, как устанавливать ресурсные ограничения для программ, выполняющихся в Unix.
Где купить или скачать
В бумажном и электронном вариантах можно найти здесь. На данный момент заказать оригинальную бумажную версию из-за рубежа проблематично. Однако эту же книгу можно купить во многих книжных магазинах.
«Чистый Python. Тонкости программирования для профи»
Автор: Бейдер Дэн
Уровень: смешанный

Легкое и «не давящее» повествование с постепенным погружением в мир Python. Редкие отсылки из жизни автора оживляют книгу. Она очень приятна для изучения и помогает разобраться с разными приемами.
Подойдет для тех, кому надоела скучная литература. Автор книги не боится сказать рассказывает не скучно, разбавляет теорию разными историями. Хотя подача на любителя: если не любите объемные книги и авторские рассуждения, то посмотрите на другие учебники.
Зато в книга подробная. Прочитав ее, научитесь:
- работать с исключениями, assert-ами, контекстными менеджерами, magic- и dunder-операциями,
- грамотно использовать стандартные структуры, ассоциативные массивы, хеш-таблицы, коллекции данных и очереди (FIFO, LIFO, с приоритетами),
- оптимизировать программы с помощью исследования модулей и объектов, изоляции зависимостей при помощи Virtualenv,
- работать со стандартными конструкциями, ООП-методами и «эффективными функциями».
Где купить или скачать
В бумажном и электронном вариантах можно найти здесь.
«Паттерны разработки на Python»
Авторы: Гарри Персиваль и Боб Грегори
Уровень: профессионалы

Подойдет тем, кто хочет изучить современные высокоуровневые паттерны проектирования. Примеры описаны на популярных фреймкорках — Flask и SQLAlchemy.
Для построения элегантной и надежной архитектуры приложений используют паттерны — без них не обойтись при масштабировании проектов.
Есть несколько основных групп высокоуровневых паттернов — предметно ориентированный подход (DDD), разработка через тестирование (TDD) и паттерны событийно-ориентированной архитектуры. Но их адаптация «под Python» не всегда очевидна.
Автор книги разложил все по полочкам. Для демонстрации паттернов автор рассматривает структуру реального проекта, в котором все из них используются. Поэтому книга не только полезна, но и интерактивна. Код проекта доступен на Github.
Где купить или скачать
В бумажном и электронном вариантах можно найти здесь.
10 книг по Python: как для новичков, так и для профи
Книг по Python довольно много, среди них есть отличные издания, которые будут полезны разработчику любого уровня. Собственно, эту подборку мы и подготовили в расчёте на специалистов с разным опытом и багажом знаний. Книги постарались упорядочить по возрастанию уровня сложности, с указанием плюсов и минусов (если они есть). Итак, поехали!

Книги для Python-разработчиков начального уровня
Программирование на Python в примерах и задачах
Автор: Васильев А. Н.

Книга знакомит читателя с базовыми методами, подходами и конструкциями, которые критически важны для изучения языка. В частности, для понимания принципов его использования на практике. Написана книга таким образом, чтобы быть понятной начинающему разработчику. Сложные (относительно) вещи тоже есть, но и они подробно разъясняются. Возрастной рейтинг — 12+, так что подходит издание и школьникам, и студентам.
Сильные стороны книги:
- автор приводит большое количество примеров кода;
- книга хорошо структурирована.
Изучаем Python: программирование игр, визуализация данных, веб-приложения
Автор: Эрик Мэтиз

Книга состоит из двух частей — теоретической и практической. В первой части автор раскрывает базовые концепции языка программирования. Также знакомит с основами тестирования кода, включая как переменные, так и списки, классы и циклы.
Во второй части уже практическое обучение: читателю предстоит написать несложную 2D-игру, а также веб-приложение на Django. Кроме того, рассказывается о визуализации данных с использованием Matplotlib и Plotly. Кстати, о визуализации в мире Python мы уже писали — статья доступна вот по этой ссылке, она может пригодиться как опытному специалисту, так и начинающему разработчику.
Сильные стороны книги:
- она будет понятна даже «зелёному» новичку;
- есть упражнения для закрепления материала в каждом разделе;
- язык книги не сухой и формальный, что также улучшает восприятие.
- примеры из книги хороши в качестве упражнения, но сами они не особо актуальны. Возможно, мы просто излишне придираемся, но было бы неплохо помочь новичкам разработать что-то простое, но актуальное.
Простой Python. Современный стиль программирования, 2-е издание
Автор: Любанович Б.

Эта книга даёт возможность не только изучить базовые для языка Python понятия, но и узнать о практиках тестирования ПО, об отладке, повторном использовании кода, асинхронном программировании. Как и в некоторых других книгах об этом ЯП, есть теория и практические задачи. Кстати, во втором издании появился раздел с f-строками, что даёт больше информации читателю.
Сильные стороны книги:
- информация излагается очень последовательно, структура книги хорошая;
- примеры простые, проблем с ними не должно быть;
- язык книги простой, автор излагает некоторые идеи с юмором.
- особых проблем нет.
Книги для Python-разработчиков среднего уровня
Однострочники Python: лаконичный и содержательный код
Автор: Майер Кристиан

Книга достаточно специфическая — она учит читать и писать… Нет, не буквы и слова, а лаконичные и достаточно функциональные однострочники. Автор понятным языком объясняет сложные вещи, а также демонстрирует примеры использования однострочников для разных задач.
Он также учит разбирать и понимать код на Python и использовать эти знания в собственной работе. Раскрываются хитрости и приёмы написания кода, регулярные выражения, полезные алгоритмы. И конечно, подробно разъясняются самые важные понятия computer science.
Сильные стороны книги:
- хороший стиль изложения;
- большое количество полезной информации;
- есть примеры кода.
- их практически нет. Возможно, вы читали эту книгу? Если да, то что скажете?
Большая книга проектов Python
Автор: Свейгарт Эл

Эта книга рассчитана на тех, кто уже освоил основы Python и готов двигаться дальше. Вот что можно найти внутри:
- «виселица», блэкджек и другие игры, в которые можно играть самому или с друзьями;
- имитационные модели лесных пожаров, бросков игральных костей и японских счётов-абаки;
- анимированные изображения аквариума, вращающегося куба и логотипа DVD, отскакивающего от краёв экрана;
- трёхмерная «бродилка» по лабиринту;
- криптография, шифры Виженера и ROT13, позволяющие надёжно спрятать ваш текст.
Автор даёт описание программы, результат её выполнения плюс код с весьма понятным и подробным объяснением. Есть, конечно, и задачи для самостоятельной работы.
Сильные стороны книги:
- в ней действительно много всего полезного, этим она и хороша;
- книга написана хорошим языком.
- мы их не заметили.
Алгоритмы неформально. Инструкция для начинающих питонистов
Автор: Такфилд Брэдфорд

Как и предыдущее издание, эта книга рассчитана на тех, кто уже знаком с основами ЯП. Название раскрывает содержание — автор знакомит нас с нюансами реализации многих популярных алгоритмов. Также читателя учат измерять и оптимизировать их производительность. Кроме того, можно научиться ещё вот чему:
- поиск максимумов и минимумов с помощью алгоритма градиентного спуска;
- использование алгоритмов отладки кода, генерация случайных чисел;
- разработка настольных игр, включая головоломки.
Сильные стороны книги:
- практическое обучение читателя;
- разработка относительно несложных игр и чат-ботов.
- что ж такое-то, их снова нет.
Книги по Python для опытных разработчиков
Внутри CPYTHON: гид по интерпретатору Python
Автор: Энтони Шоу

Автор рассказывает о принципах работы внутренних механизмов языка. Даются задания, которые позволяют на практике понять то, о чём рассказывает Шоу. В частности, раскрываются такие нюансы, как:
- грамматика и язык Python;
- почему CPython написан на C, а не на Python;
- спецификация языка Python;
- документация языка;
- файл грамматики и многое-многое другое.
Читатель, освоив изложенные в книге материалы, сможет разобраться с основными концепциями внутреннего устройства CPython и научиться:
- читать исходный код интерпретатора CPython и свободно ориентироваться в нём;
- вносить изменения в синтаксис Python и компилировать их в вашу собственную версию CPython;
- понимать внутреннюю реализацию таких структур, как списки, словари и генераторы;
- управлять памятью CPython;
- масштабировать код Python за счёт параллелизма и конкурентного выполнения;
- дополнять базовые типы новой функциональностью, выполнять наборы тестов;
- профилировать и проводить бенчмарк Python-кода и исполнительной среды;
- отлаживать код C и Python на профессиональном уровне;
- изменять или обновлять компоненты библиотеки CPython, чтобы они могли использоваться в будущих версиях.
Сильные стороны книги:
- уникальная информация, которая будет полезна многим разработчикам и которой нет или почти нет в других книгах;
- хорошо структурированный материал.
- стоимость книги высоковата.
Машинное обучение с использованием Python. Сборник рецептов
Автор: Элбон Крис

В книге содержится сразу 200 рецептов решения многих задач машинного обучения. Авторы приводят решения, используя векторы, матрицы и массивы, линейную и логистическую регрессию, деревья, леса и k ближайших соседей, кластеризацию и нейронные сети. Если описать всё содержимое, то это будет отдельная статья, так что лучше ознакомиться самостоятельно.
Сильные стороны книги:
- автор раскрывает неочевидные приёмы работы, о которых не все знают;
- приводятся примеры решения частых проблем ML и DS.
- практически нет, разве что написано суховато, но и тема соответствующая.
Black Hat Python: программирование для хакеров и пентестеров, 2-е издание
Авторы: Джастин Зейтц, Тим Арнольд

Это уже второе издание популярной книги. Она даёт возможность изучить обратную сторону медали, то есть узнать о вещах вроде кражи учётных данных пользователя, написания сетевых снифферов, создания фазеров мутаций, создания скрытых троянов. Всё это используют как взломщики, так и пентестеры, специалисты по информационной безопасности. Книга подходит тем из читателей, кто занимается поддержанием безопасности сетей и компьютерных систем.
Сильные стороны книги:
- интересные нюансы работы пентестера;
- всегда интересно прикоснуться к «запретному плоду».
- либо нет, либо мы их просто не обнаружили.
Высокопроизводительные Python-приложения. Практическое руководство по эффективному программированию
Авторы: Миша Горелик, Йен Освальд

Ну а здесь раскрываются нюансы создания высокопроизводительных приложений. Этого авторы помогают достичь благодаря ускорению кода выполнения в программах, которые работают с большими объёмами данных. Они обучают задействовать плюсы многоядерных архитектур, а также строить масштабируемые системы.
Сильные стороны книги:
- авторы рассказывают просто о сложных вещах.
- мы их снова не нашли.