![image](https://habrastorage.org/getpro/habr/post_images/ebf/8de/aae/ebf8deaaebf9cf6492131665965c2b43.jpg)
Всегда есть множество поводов выпустить книгу про IT и программирование. Взлетел курс биткоина — на рынке появляется десяток блокбастеров про технологию блокчейна и майнинг. Машина на Go обыграла человека в какую-нибудь интеллектуальную игру — получите кипу «самых полных руководств» по гугловскому языку.
Но есть темы вечные. Одна из них — Python. Оно и понятно, язык прекрасно подойдёт тем, кто с программированием не знаком вовсе; изучить все основные библиотеки можно за пару недель, а возможности практически не ограничены. Автор блога GeekBrains Илья Бубнов заглянул на электронные полки магазина Amazon, чтобы посмотреть, что полезного было выпущено или перевыпущено по Python в первой половине 2018 года.
Computer Programming for Beginners: Fundamentals of Programming Terms and Concepts, Nathan Clark
![](https://habrastorage.org/getpro/habr/post_images/5e0/134/1ff/5e01341ff52716bb62852e71eb945e0d.jpg)
Прежде, чем мы перейдём непосредственно к языку, позвольте порекомендовать эту книгу. Из того, что выходило в последние годы, пожалуй, именно это наиболее полное и удобочитаемое введение в программирование.
Она прекрасно подойдёт тем, кто вообще ничего не понимает в программировании. Всего на двухстах страницах очень лаконично, но вместе с тем понятно описано:
- Все основные термины программирования с определениями.
- Что такое состояния, операторы, функции, области видимости и использования.
- Как выглядят программы в разных языках: структура, сборка и отладка.
- Что такое ООП, чем оно отличается от функционального программирования, и когда что применять.
- Как работать с памятью: запись, управление, очистка, обращение.
Всё это сопровождается примерами на языках C#, Python и Java, поэтому вы не только познакомитесь с программированием в теории, но и начнёте вникать в него на практике.
Python Programming: For the Beginners, Navi Feroz
![](https://habrastorage.org/getpro/habr/post_images/e35/895/3d9/e358953d9eb4ca844868cec152379dbf.jpg)
Если судить только по отзывам, это одна из лучших книг для новичков. Здесь без углубления в механику процессов (с этим можно ознакомиться в предыдущей книге) даются основные знания по программированию в целом, и уже потом по синтаксису Python, структуре программ, основным библиотекам и возможностям. Всё написано простым языком, поэтому читать её можно хоть перед компьютером, хоть лёжа на пляже в отпуске.
Безусловно, на выходе вы не почувствуете себя готовым специалистом, но определённо загоритесь желанием продолжить обучение в этом направлении. Кроме того, книга изобилует базовыми примерами, поэтому в дальнейшей практике вы не раз вернётесь к повторному изучению отдельных глав.
Python Programming: A Step By Step Guide For Beginners, Brian Jenkins
![](https://habrastorage.org/getpro/habr/post_images/261/f69/e65/261f69e6585e0478f0f52b82a363ad62.jpg)
Эта книга больше подойдёт тем, кто хочет не углубляться в дебри теории, а постигать новый язык, строго следуя шагам от установки до написания первой серьёзной программы на Python 3. Разумеется, это не та книга, которую можно изучать вдали от компьютера.
Материал предельно разжёван и сопровождён кучей примеров, поэтому у вас не останется белых пятен после прочтения, всё усвоится даже на уровне механической памяти. В целом, это неплохое руководство для ликбеза, если у вас есть всего несколько свободных дней.
Python: — The Bible- 3 Manuscripts in 1 book: -Python Programming For Beginners -Python Programming For Intermediates -Python Programming for Advanced, Maurice J. Thompson
![](https://habrastorage.org/getpro/habr/post_images/324/cd3/7d7/324cd37d7d0ae8e2a94874333215a8a1.jpg)
Собрание из трёх книг, которое придётся по душе тем, кто уверен, что его будущее будет связано с Python. Каждая часть рассчитана на определённый уровень подготовки. Заявленная длительность обучения по этому руководству — 21 день. Однако не стоит думать, что этого времени хватит, чтобы стать готовым специалистом.
В первой части рассматриваются базовые вопросы:
- Что такое Python? В чём его преимущества перед другими языками?
- Как начать работу?
- Что такое переменные, строки, списки, словари и пр.?
- Как выглядит программа на Python? Почему важно соблюдать определённые правила стиля?
- Как создать первый проект?
Вторая и третья части раскрывают более глубокие вопросы, например:
- Как в Python организована работа с памятью?
- Как выглядит ООП в Python?
- Как надо отлаживать и тестировать программы?
- Что такое итераторы и генераторы? Как их использовать?
Это лишь малый перечень рассматриваемых тем — в «Библии» есть ответы на все вопросы по языку, но ровно в том объёме, который можно уместить всего в три книги.
Python Programming: The Basic, Blackhat, Intermediary and Advanced Guide to Python Programming, Richard Ozer
![](https://habrastorage.org/getpro/habr/post_images/908/502/a5f/908502a5f317918b232b3e768e941d36.jpg)
Схожая с предыдущей коллекция, но состоящая из четырёх частей. Здесь чуть больше информации, чуть больше примеров, в «продвинутых» частях чуть больше акцента на механизмы работы Python. В целом, это такое же полноценное руководство по языку, которое полезно держать под рукой в течение долгих лет работы в программировании.
Python Machine Learning: A Guide For Beginners, Leonard Eddison
![](https://habrastorage.org/getpro/habr/post_images/153/1eb/b2f/1531ebb2f1fa48532de16c774789e9c9.jpg)
От общих книг по языку перейдём к руководству для новичков, которым интересен не просто Python, а его применение в сфере искусственного интеллекта. Хотя в названии сказано, что книга для новичков, ознакомиться с языком лучше заранее, ведь основной акцент здесь будет сделан не столько на нём, сколько на работе с данными.
Основная цель автора — показать, как работает мир Data Science, как информация структурируется, обрабатывается и помещается в алгоритмы, которые впоследствии использует искусственный интеллект. То есть это не классическое пошаговое руководство, поэтому книга будет интересна даже тем, кто изучает другие языки, или не программирует вовсе.
Python Programming Illustrated For Beginners & Intermediates:: “Learn By Doing” Approach-Step By Step Ultimate Guide To Mastering Python: The Future Is Here!, William Sullivan
![](https://habrastorage.org/getpro/habr/post_images/a01/8cf/c3c/a018cfc3c91b2a8f0cae1058f10f0677.jpg)
Ещё одно пошаговое руководство с примерами рабочего кода. Принципиальное отличие от большинства других книг — количество информации. Это означает, что вам не придётся бежать в магазин за следующий книгой сразу после создания первой программы. С помощью этого руководства вы сможете попрактиковаться в функциональном программировании, научитесь строить информативные диаграммы, овладеете профессиональным стилем написания кода. И всё это благодаря огромному количеству примеров, сдобренных подробным описанием процессов.
Coding: Raspberry Pi &Python: A Guide For Beginners, Leonard Eddison
![](https://habrastorage.org/getpro/habr/post_images/f25/2fd/70d/f252fd70d0a128e0efecaf799e410d78.jpg)
Ещё одна очень качественная книга от Эддисона, состоящая из двух частей. Первая посвящена ликбезу по Python — её вполне можно использовать в связке с вышеуказанной книгой “Python Machine Learning…”. Вторая часть — познание с помощью Python возможностей одной из самых популярных гиковских платформ. В целом, это очень удобное настольное руководство для тех, кто решил создать своего робота или сделать собственный дом чуть умнее.
Непосредственных примеров из разряда «как собрать машину для полива растений» здесь нет, но если вы мало что понимаете в программировании — книга будет очень полезна.
Coding: The Bible: 2 Manuscripts — Python and Raspberry PI, Larry Lutz
![image](https://habrastorage.org/getpro/habr/post_images/e3a/b36/2d4/e3ab362d4395daed24ef9a8ec83688e7.jpg)
Схожее по структуре собрание из двух книг, но чуть большего объёма. Здесь подробно рассматриваются не только вопросы, касающиеся непосредственно языка, но и такие важные моменты, как оптимизация кода, надёжность и модульность. После прочтения вопрос с Python фактически можно закрыть — всё остальное будет лежать в области инженерной мысли и желания самостоятельно находить ответы.
Вторая часть знакомит с платформой Raspberry Pi. Вы узнаете, как поставить на устройство операционную систему и начать работать с ним, используя Python. В отличие от предыдущей книги, здесь есть практические примеры, но всё же не в том количестве, чтобы не пришлось напрягать мозг.
Machine Learning: Step-by-Step Guide To Implement Machine Learning Algorithms with Python, Rudolph Russell
![](https://habrastorage.org/getpro/habr/post_images/da8/0b6/f86/da80b6f86d4142e54a60e572ae65a28f.jpg)
Завершим наш обзор ещё одной книгой по актуальной теме — машинному обучению. В отличие от книги Эддисона, здесь изначально предполагается, что у вас есть знания и опыт работы с Python. Книга придётся по душе всем, кому близка тема искусственного интеллекта и больших данных, но из-за обилия примеров с использованием таких библиотек, как pandas, matplotlib и sklearn, особенную ценность она представляет для питонистов. Здесь огромное количество иллюстраций и примеров кода (насколько это возможно в 100-страничной книге), а также пояснений, посредством которых автор объясняет основные алгоритмы обработки данных. В целом, это одна из лучших книг по МО на Python.
А какую свежую книгу по этому языку посоветуете вы?