Обзор литературы по языку Python для начинающих

    Очень часто можно увидеть вопросы на том же тостере: «А какую книгу взять книгу, чтобы выучить технологи Х», и естественно в комментариях идет большое число мнений и большое число различных книг. В данной теме, я сделаю обзор самых популярных книг по Python для начинающих программистов, и дам четкое мнение – нужно ли их читать или нет (субъективно).

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

    Подробно про книги на Python


    Марк Лутц – Изучаем Python и Программируем на Python (2 тома). По моему мнению, данную книгу должен прочитать каждый программист на Python, который хочет связать свою жизнь с этим языком.

    • Она дает обширное понимание языка
    • Она объясняет плюсы и минусы языка
    • Она показывает эволюцию языка.

    Мне очень нравится, как автор ведет свои рассуждения от возникновения проблемы, до её решения через эволюцию программы. Так же дается отличное понимание эволюции языка (сравнивая python 2.7 и python 3.4).

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

    По моему мнению, ни одна другая книга, например, Майкл Доусон — Программируем на Python, Билл Любанович – Простой Python, не могут влить понимание языка, как это делает Лутц.

    Прочитав эту книгу и скачав PyCharm без it-бекграунда, я смог написать свои первые программы (небольшое десктоп-приложение, парсер сайтов и ребус).

    Форсье Дж., Биссекс П., Чан У., Django – веб-разработка приложений на Python. Я считаю эту книгу полностью бесполезной, так как она не справляется со своей главной задачей – научить писать веб-приложения на Django.

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

    Для изучения Django рекомендую посмотреть вступительный обучающий ролик на Youtube от украинского центра (дает базовое понимание, того как эта штука работает), а потом двигаться со своим проектом по документации и гуглению вопросов.

    Так за 3 месяца я смог собрать рабочий проект (а по пути выучить html/css/js), который мне уже 4 года приносит доход. Сейчас постепенно наращиваю в функционал.

    Вестра Э. — Разработка геоприложений на языке Python. Эту книгу должен прочитать каждый разработчик, который хочет написать адекватное ГИС приложение на Python. Эту книгу можно условно разделить на два раздела:

    1. Что такое ГИС системы – очень ясно и адекватно
    2. Почему писать Гис приложение на Python – это больно

    Типичная фраза второй части книги: «Под язык C++/Java есть отличная ГИС библиотека, для Python есть багнутый порт без адекватной документации, поэтому открываем документацию на C++/Java, открываем исходный код порта, и начинает ковырять». В итоге, приходишь к пониманию, что давайте лучше сразу возьмем Java и не будем заниматься мракобесием.

    Андреас Мюллер, Сара Гвидо. Введение в машинное обучение с помощью Python. Небольшая книга, которая дает четкое понимание того, что такое машинное обучение, на каких принципах оно базируется, какие инструменты для этого применяются. Для базового понимания – лучшая книга, что есть на данный момент.

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

    Ноа Гифт, Джереми М. Джонс Python в системном администрировании UNIX и Linux. Я считаю эту книгу абсолютно бесполезной для прочтения, так как она дает сжатый курс питона, сжатый курс по IPython, сжатый курс по скриптингу в Unix. В итоге, все какое-то поверхностное, однобокое, и устаревшее. Если вы прочитали хотя бы одну книгу по Питону до этого, смело проходите эту книгу стороной.

    Р. Митчелл. Скрапинг веб-сайтов с помощью Python. Занимаясь в свое время достаточно много парсингом данных с различных сайтов, я могу сказать, что данная книга охватывает практически все аспекты данного ремесла. Другое дело, что вся эта информация без проблем гуглится в небольших статьях, которые дают куда более простое объяснение и руководство к действию. Поэтому эти книга подходит исключительно для тех, кто раньше не занимался парсингом (для них она будет интересна), остальные проходят книгу стороной.

    Ян Эрик Солем Программирование компьютерного зрения на языке Python. Еще одна бестолковая книга, которая фактически дает краткое описание популярных библиотек по работе потоками данных и мультимедиа файлами. Не имеет какой-либо четкой структуру, не имеет понятной повествовательной линии. Впустую тратит ваше время. Да, надо признать, разработка компьютерного зрения на Python – это исключительно pet-проект, для серьезных условий это не особо котируется. Это описание также подходит под книгу: «Цифровая обработка сигналов на языке python»

    В заключении


    Напоследок, я бы хотел расказать про одну книгу, которая не совсем учит вас питону, однако в ней все примеры идут на Python: «Test-Driven Development with Python» — в данной книге показывается пример разработки веб-приложения на Django, где сначала пишутся тесты, а потом под это дело подгоняется функционал.

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

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

    Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

    Поделиться публикацией
    Ой, у вас баннер убежал!

    Ну, и что?
    Реклама
    Комментарии 40
    • +3
      Эрик Мэтиз. Изучаем Python. Интересно и по существу.
      • +1
        И в послесловие добавить: после прочтения этих книг, читайте Рамальо Лучано «Python. К вершинам мастерства».
        • 0

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

        • +1

          Python для детей. Как ни странно, но многие по ней быстрее понимают синтаксис

          • 0
            Уточню. «Python для детей» или «Python для детей и родителей»?
          • 0
            Благодарствую. Сохранил список.
            • +2
              image

              Тоже считаю отличной книгой. Открыла мне многое.
              • 0
                Поддерживаю, одна из лучших книг про Python, но не для новичков.
              • 0

                Забыли Бизли "Подробный справочник" 4-ое издание

                • 0
                  Начинал с Лутца, соглашусь с тем, что написано очень доступно. В последствии постоянно на столе держу «Дэвид М. Бизли — Python. Подробный справочник», в качестве справочника.
                  • 0
                    А есть ли толковые видеокурсы?
                    • 0

                      Что привлекает людей в видеокурсах?


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


                      Поэтому только письменные источники. На одной половине монитора — книга/документация, на другой — терминал/редактор/ide по вкусу.

                      • 0
                        По качеству и подаче материала — всё зависит от провайдера видеокусов. На счёт подачи — Вы правы — доступность — главная фишка. Не всегда у человека находится время почитать книжку, в отличие от просмотра видеокурсов. В дороге (автобусе и даже метро) лично мне очень неудобно читать книжку, даже сидя. С видеокурсами намного удобнее. Но практику ни книжкой ни виедокурсом не заменишь, поэтому доступность терминала/редактора — вопрос открытый.
                        • 0
                          Не надо противопоставлять. И книги и видео имеют свое место.
                          Видео записывается быстрее чем выходят книги, т.е. последнии версии, рассматриваются последнии актуальные вопросы.
                        • 0

                          На Cousera и кажется на YouTube курсы Dr.Chuck Lawrence. Доступно, наглядно, с самых азов.

                        • 0

                          Не видеокурсы, но онлайн пошаговый учебник для чайников по питону и другим есть тут:
                          https://www.sololearn.com/
                          Есть веб-версия (правда только на английском), и мобильные приложения (есть и на русском) — удобно в транспорте время коротать. Пошаговое обучение с тестами в конце каждой главки.

                          • 0
                            itvdn и Сергей Лебедев, очень хорошие видеокурсы. Плюс в новом cs50 ввели python, только там на английском.
                            • 0
                              — отличные видеокурсы, имеются две программы (для новичков, и более углубленный для тех же новичков :) )
                            • 0
                              Это не совсем видеокурс, но набор лекций от Сергея Лебедева: www.youtube.com/playlist?list=PLlb7e2G7aSpTTNp7HBYzCBByaE1h54ruW
                            • 0

                              Для такого языка, как Python, двухтомник Лутца — имхо, перебор.


                              Legality guide (что есть в языке): Марк Саммерфилд — «Программирование на Python 3. Подробное руководство»
                              В книге есть вся необходимая информация по языку. Издание 2009 года, чтобы поддерживать актуальные знания, читаем официальные обзоры нововведений: What’s New in Python.


                              Morality guide (как этим пользоваться): Brett Slatkin — «Effective Python»
                              Бо́льшая часть советов может показаться слишком очевидными. Если же опыта нет, то это неплохой гайд по идиомам языка.


                              Programming-by-example guide: Mark Summerfield — «Python in Practice»
                              В книге есть Pythonic реализации классических паттернов, а также показаны примеры продвинутого использования Python-специфичных конструкций. Не скажу, что коммерческий код нужно писать именно так, но как минимум для расширения сознания книга хороша.

                              • 0
                                Что скажете о The Quick Python Book by Naomi Ceder?
                                • 0

                                  Почему во всех подобных списках рекомендуют Лутца? Признайтесь, хоть кто-нибудь прочитал его целиком? Обе книги по 1600+ страниц. Сплошная вода. Саммерфилд (Mark Summerfield) пишет намного более лаконично. Programming in Python 3 (объем 600 страниц, есть на русском) — исчерпывающее описание основных особенностей языка, дополнительно — Python in Practice


                                  Еще рекомендую Python Cookbook от David Beazley — как писать идиоматичный код на питоне

                                  • 0
                                    Если человек изучает Python, как первый язык, и он осилил Лутца, то он сможет стать программистом = тест на усидчивость, педантичность и настойчивость =)
                                  • 0
                                    A как же эти 2 книги?
                                    1. Джейсон Бриггс. Python для детей. Самоучитель по программированию
                                    2. Крэйг Ричардсон. Программируем с Minecraft. Создай свой мир с помощью Python
                                      • 0
                                        Недавно приобрел ребенку. Очень понравилось
                                        • +1
                                          начали с питона для майнкрафта, потом
                                          image

                                      • 0
                                        «Two Scoops of Django 1.11: Best Practices for the Django Web Framework» большое кол-во дельных советов о том, как стоит и не стоит писать на Django. Правда, с выходом django 2 эта книга местами устарела.
                                        • 0

                                          Поскольку 1.11 — текущая LTS-версия (кажется, до 2020 года), в этом плане информация актуальна. Наверняка уже готовится большое обновление книги в связи с отказом от Python 2 во второй версии Django и прочих новшеств.

                                        • 0
                                          Лутц — это стимул. Особенно, когда на учебу мало времени и характер «по волнам, по морям». Сел, расписал скорость одоления книги, офигел: и как часы, каждый день. Хочешь, не хочешь. Прошёл часть, и уже обидно бросать. И сразу же на Лутца стали нанизываться статьи, сайты-задачники типа CheckiO, видео. В общем, увлекающимся и отвлекающимся я бы точно Лутца рекомендовал.
                                          • 0
                                            А есть ли книга для начинающих с упором на graphene, graphene-django, time series analysis, graphite?
                                            • 0
                                              > time series analysis

                                              Уэс Маккинни "Питон и анализ данных" (автор pandas). Но всё же быть начинающим в Python и начинающим разбираться в анализе временных рядов на Python — это довольно разные ипостаси, полагаю их сложно параллелить.
                                              • 0
                                                Спасибо. К сожалению эта книга 2013 года и не то чтобы устрарела, но не убеждает в необходимости спускаться на уровень NumPy, pandas, matplotlib… По крайней мере в «современной книге» хотелось бы найти что вот такое представление возможно: тут graphite — запрашивай данные, трансформируй (мерж, апроксимация, фильтрация, выравнивание), вот тут graphene django публикуй данные (с возможностью drill in), а где-то по середине еще и кэш.
                                            • 0
                                              Еще неплохая книга Рейтц, К. Таня Шлюссер Т. «Автостопом по Python». Но это уже для тех, кто немного знает Python.
                                              • 0
                                                Learning Python the hard way не рассматривали?
                                                • 0
                                                  Если честно, то после прочтения 5-8 книг по питону + официальной документации, перестаешь видеть в книгах что-то уникальное и сверхполезное.

                                                  Самым полезными книгами я считаю базовую книгу Лутца + книгу по машинному обучению. Все остальные книги просто в более удобной форме рассказывают про какие-то библиотеки и тулзы (например, я встречал на Youtube 30 минутный ролик какого парня из Украины, который пишет парсер применяя все, что дано в книге по веб-скрапингу). Поэтому, не обязательно читать книгу.

                                                  Что касается книги про вершину мастерства, то опять же частично это есть в книги лутца, частично это видно на практике (когда начинаешь работать с крупным проектом).

                                                  Т.е. например, при написании большого сложного проекта надо думать о памяти, использовать слоты, кортежи и прочее. Но чаще всего это не нужно, поэтому зачем читать и запоминать то, то тебе скорее всего никогда не понадобится (и ты это забудешь через месяц), я не вижу.
                                                • 0
                                                  Не для новичков, конечно, но книжка «Black Hat Python: Python Programming for Hackers and Pentesters» тоже интересно рассматривать, как учебник для повышения скила работы на этом замечательном языке, да и тема безопасности тоже интересная)
                                                  • 0
                                                    Забавно, что на хабре почти не упоминается Роман Сузи — «Язык программирования Python». Отличная книга. И как учебник и как справочник(пока не приучишься читать доки). В сети доступна.

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

                                                    Самое читаемое