Learning python на русском: Учим Python качественно / Habr – Самоучитель Python | Python 3 для начинающих и чайников

Содержание

Учим Python качественно / Habr

Здравствуйте всем!

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

Удобочитаемый синтаксис, прост в обучении, высокоуровневый язык, Объектно-Ориентированый язык программирования (ООП), мощный, интерактивный режим, масса библиотек. Множество иных плюсов… И это всё в одном языке.
Для начала окунёмся в возможности и узнаем, что же умеет Python?

А зачем мне твой Python?

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

Для многих, в том числе и для меня, основные преимущества — это удобочитаемый синтаксис. Не много языков могут похвастаться им. Программный код на Python читается легче, что значит, многократное его использование и обслуживание выполняется гораздо проще, чем использование программного кода на других языках сценариев. Python содержит самые современные механизмы многократного использования программного кода, каким является ООП.
Библиотеки поддержки

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

Большая часть программ на языке Python выполняется без изменений на всех основных платформах. Перенос программного кода из Linux в Windows заключается в простом копировании файлов программ с одной машины на другую. Также Python предоставляет Вам массу возможностей по созданию переносимых графических интерфейсов .
Скорость разработки

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

  • Компания Google использует Python в своей поисковой системе и оплачивает труд создателя Python — Гвидо ван Россума
  • Такие компании, как Intel, Cisco, Hewlett-Packard, Seagate, Qualcomm и IBM, используют Python для тестирования аппаратного обеспечения
  • Служба коллективного использования видеоматериалов YouTube в значительной степени реализована на Python
  • NSA использует Python для шифрования и анализа разведданных
  • Компании JPMorgan Chase, UBS, Getco и Citadel применяют Python для прогнозирования финансового рынка
  • Популярная программа BitTorrent для обмена файлами в пиринговых сетях написана на языке Python
  • Популярный веб-фреймворк App Engine от компании Google использует Python в качестве прикладного языка программирования
  • NASA, Los Alamos, JPL и Fermilab используют Python для научных вычислений.

и другие компании также используют этот язык.

Python является языком сценариев.

Литература

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

Вот источники, которые помогут Вам познакомиться ближе с Python, а может и стать будущим Гвидо ван Россумом.
*Некоторые источники могут быть на английском. Не стоит этому удивляться, сейчас масса отличной литературы пишется именно на английском языке. Да и для самого программирования надо знать хотя бы базовые знания английского.

Настоятельно рекомендую прочитать первым делом книгу — Марк Лутц. Изучаем Python, 4-е издание. Книга переведена на русский язык, так что бояться не стоит, если Вы вдруг не знаете английский. Но именно четвёртое издание.

Для тех, кто знает английский, можно прочитать документацию на официальном сайте Python. Там всё довольно понятно описано.

Неплохой ресурс — Основы программирования на Python. Учебник. Вводный курс
Одна из моих недавно прочитанных книг — Язык программирования Python. Объясняется всё довольно доступно и на русском.

Хорошая книга, тоже всё доступно и на русском — Python. Подробный справочник, 4-е издание.

А если же Вы более принимаете информацию по видео, то могу посоветовать уроки от компании Google, которые ведёт Ник Парланте — ученик из Стэнфорда. Шесть видеолекций на YouTube . Но в бочке мёда тут есть капля дёгтя… Ведёт он на английском языке с английскими субтитрами. Но надеюсь, что остановит это немногих.

Что делать, если я прочитал книги, но не знаю как применять знания?

Без паники!
Советую почитать книгу Марк Лутц. Программирование на Python (4-е издание). Ранее было «изучаем», а тут «Программирование». В «Изучаем» — Вы получаете знания Python, в «Программирование» — Марк Вас учит как их применять в Ваши будущие программы. Книга очень полезная. И думаю одной её Вам хватит.
Хочу практики!

Легко.
Выше я писал о видеолекциях от Ника Парланте на YouTube, но у них есть также некие задачки на сайте. Интересные задачки, советую каждому. На английском.

Недавно школа программирования Codecademy открыла интерактивные Python-курсы. После прохождения каждого мини-курса, Вам будет позволено пройти некую «практику». Уроки ведутся на английском, но всё доступно и понятно. Начинается с переменных и типов данных.

И на окончание — хорошие закрепляющие и начинающие курсы. Learn Python The Hard Way.

Ну вот и всё!

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

Дерзайте! Всем удачи.

книги для начинающих / Habr

Друзья, забирайте в закладки подборку из 17 книг по Python.

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

Готовы приступить к изучению Python?

Тогда начнем!

Начинаем подготовку к изучению Python


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

«Computer Programming for Beginners: Fundamentals of Programming Terms and Concepts», Натан Кларк

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

«English for Information Technology», Пирсон Лонгман

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

«Basic English for Computing», Оксфорд

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

Знакомимся с Python


Начните изучать язык программирования с теоретических основ — разберитесь в терминах, принципах работы языка. Для этого изучите книги:

«Hello World. Занимательное программирование», Картер Сэнд, Уоррен Сэнд

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

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

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

Переходим к практике


Когда разберетесь в теоретических основах, переходите на книги с практикой — реальными примерами кода, задачами, руководствами по разработке первых простых проектов:

«Изучаем Python», Марц Лутц

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

«Программирование на Python», Марк Лутц

Руководство по использованию Python в различных сферах — системном администрировании, создании веб-приложений и графических интерфейсов. Автор рассказывает, как работать с базами данных, программировать сетевые взаимодействия, создавать интерфейсы для сценариев и других задач.

«Python — к вершинам мастерства», Лучано Рамальо

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

«Python Programming: A Step By Step Guide For Beginners», Брайан Дженкинс

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

«Python Programming: The Basic, Blackhat, Intermediary and Advanced Guide to Python Programming», Ричард Озер

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

«Python Programming Illustrated For Beginners & Intermediates: «Learn By Doing» Approach-Step By Step Ultimate Guide To Mastering Python: The Future Is Here!», Вильям Салливан

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

«Python на практике», Марк Саммерфилд

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

Продолжаем изучение: книги о Python по направлениям


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

«ГИС-приложения — Разработка геоприложений на языке Python», Эрик Вестра

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

«Скрапинг сайтов — Скрапинг веб-сайтов с помощью Python», Райан Митчелл

Руководство, как примененять скрипты Python и веб-API, чтобы собирать и обрабатывать данные с тысяч сайтов. Будет интересна программистам и веб-администраторам, которые хотят изучить работу веб-скраперов, освоить анализ сырых данных и тестирование интерфейса.

«Введение в машинное обучение с помощью Python. Руководство для специалистов по работе с данными», Андреас Мюллер, Сара Гвидо

Книга для новичков. Авторы доступно для понимания рассказывают, как строить системы машинного обучения, подробно объясняют этапы работы с применением Python и библиотек scikit-learn, NumPy и matplotlib.

«Django. Подробное руководство», Адриан Головатый, Джейкоб Каплан-Мосс

Книга о Django — фреймворке для разработки веб-приложений на Python. Авторы рассказывают о компонентах фреймворка и методах работы с ним, приводят примеры применения в разных проектах.

«Разработка веб-приложений с использованием Flask на языке Python», Мигель Гринберг

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

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

Очень часто можно увидеть вопросы на том же тостере: «А какую книгу взять книгу, чтобы выучить технологи Х», и естественно в комментариях идет большое число мнений и большое число различных книг. В данной теме, я сделаю обзор самых популярных книг по 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. Все книги из моего обзора можно найти в открытых источниках, либо в магазинах. Не все они имеют перевод, но благо для разработчика это не должно быть проблемой.

13 лучших книг по Python для начинающих и продолжающих

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

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

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

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

7 лучших книг по Python для начинающих

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

Python Crash Course, Eric Matthes

Книга начинается с пошагового руководства по основным элементам Python и структурам данных. Подробно разобраны все темы: от переменных до тестирования кода.

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

Первый проект – игра об инопланетном вторжении, разработанная с использованием пакета pygame. Вы спроектируете корабль, создадите инопланетный флот и научитесь сражаться с космическими захватчиками.

Во втором проекте вы научитесь работать с matplotlilb: загружать данные в различных форматах, визуализировать результаты в виде графиков и диаграмм, взаимодействовать с веб-API и извлекать информацию с GitHub и HackerNews.

Третий проект – создание полноценного веб-приложения на Django с админ-панелью и контролем доступа пользователей.

Head-First Python, Paul Barry

Уникальный подход серии Head First – небольшие самодостаточные разделы, богатые понятными иллюстрациями, примерами и дополнительными фактами – делает эту книгу необычайно приятной и легкой для чтения.

Изучая книгу, вы будете по кусочкам создавать динамический веб-сайт на Python и CGI, а затем и Android-приложение. Вы научитесь обрабатывать пользовательский ввод, разворачивать и масштабировать ваш проект.

Хотя эта книга не столь всеобъемлюща, как некоторые другие, она охватывает широкий спектр задач и объясняет их доступным языком. Если вы только начинаете погружаться в мир программирования и еще не привыкли к сухому языку большинства руководств, серия Head First – для вас. Читая ее, вы точно не заскучаете.

Invent Your Own Computer Games with Python, Al Sweigart

Если вы любите игры и мечтаете их создавать, то вам непременно следует обратить внимание на эту книгу. Она расскажет об основах программирования на Python и поможет создать несколько классических игр: Угадайку, Dragon’s Realm, Виселицу, Реверси, Сонар и, конечно, Крестики-Нолики.

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

Из книги вы узнаете, как анимировать графику, обнаруживать столкновения, использовать звуки, изображения и спрайты. В этом поможет замечательная библиотека PyGame.

Think Python: How to Think Like a Computer Scientist, Allen B. Downey

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

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

В последнем издании (2015) появилось больше практических упражнений, но в целом она ориентирована на глубокое понимание теории.

Effective Computation in Physics: Field Guide to Research with Python, Anthony Scopatz, Kathryn D. Huff

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

Книга разделена на четыре блока:

  • Getting Started – все необходимые сведения для начала работы.
  • Getting it Done – работа с данными: основные библиотеки, регулярные выражения, структуры и хранение информации.
  • Getting it Right – самые распространенных ошибки и способы избежать их, отладка, тестирование, а также работа с Git и Github.
  • Getting it Out There – эффективное взаимодействие с потребителями кода: языки разметки, командная работа, лицензии ПО.

Learn Python 3 the Hard Way, Zed A. Shaw

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

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

Содержание книги представлено замечательно: четкие главы, краткие и понятные примеры кода, более 50 упражнений, каждое из которых основано на предыдущем.

Среди всех книг этой подборки, «Трудный путь» имеет самые смешанные отзывы. Сообщество Stack Overflow отмечает, что ее читатели иногда задают бессмысленные вопросы на форуме, что связано с особенностями подачи материала. И все же она входит в список лучших книг по Python.

Real Python Course, Real Python Team

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

Руководство ориентировано на практический подход. Оно глубоко и понятно описывает основы языка, но также рассматривает более сложные и продвинутые функции Python. Вы научитесь обрабатывать PDF-файлы, использовать SQL, парсить веб-страницы, проводить сложные вычисления с помощью numpy и matplotlib, создавать графические интерфейсы.

Подборка лучших книг по Python для детей

Следующие две книги предназначены для детей в возрасте 9-10 лет (или старше). Разумеется, их нельзя просто дать ребенку и отправить его учиться, но они идеально подходят для совместных занятий с родителями.

Python for Kids: A Playful Introduction to Programming, Jason R. Briggs

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

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

После теоретической части начинаются два забавных проекта. Первый из них – Bounce – однопользовательская версия Pong. Он интегрирует полученные знания о функциях, классах, потоке выполнения, создании интерфейсов с помощью tkinter, выполнении геометрических вычислений и использовании привязок событий для создания интерактивности.

Второй проект немного сложнее и глубже – видеоигра Mr. Stickman Races for the Exit.

Вам понравится эта книга, если вы ищете веселое, доступное введение в программирование и Python в частности.

Teach Your Kids to Code: A Parent-Friendly Guide to Python Programming, Bryson Payne

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

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

Начинается все с основ языка и «черепахи» (turtle). Каждое изученное понятие сразу же применяется в созданной графике и она становится все более сложной. Вы создадите несколько забавных игр и простой графический редактор. В книге очень много задач и великолепные резюме в конце каждой главы. К концу чтения у вас будут все необходимые инструменты Python для создания полноценных игр.

Подборка лучших книг по Python для среднего и продвинутого уровня

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

Настоящее понимание языка требует практики. Узнав, что происходит «под капотом» вы научитесь программировать намного эффективнее.

Книги из этого раздела дадут вам более глубокое понимание концепций Python и научить кодить красиво.

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

Python Tricks: A Buffet of Awesome Python Features, Dan Bader

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

Содержание книги – это шведский стол, на котором вы можете попробовать любое понравившееся вам блюдо.

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

Fluent Python: Clear, Concise, and Effective Programming, Luciano Ramalho

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

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

В книге шесть разделов, каждый из которых можно читать независимо от других:

  • В Прологе описывается объектно-ориентированная природа языка и методы поддержания согласованности библиотек;
  • Структуры данных охватывают последовательности, сопоставления, наборы и объясняют разницу между str и bytes;
  • Функции как Объекты – рассказ о функциях как объектах первого класса в Python;
  • Идиомы объектно-ориентированного программирования включают такие понятия, как ссылки, изменяемость, экземпляры, множественное наследование и перегрузка операторов;
  • Поток управления излагает концепции генераторов, менеджеров контекста, сопрограм и асинхронности;
  • Метапрограммирование исследует менее известные аспекты классов вроде динамических атрибуты и свойств, дескрипторов атрибутов, декораторов классов и метаклассов.

Если вам нужен более глубокий ответ, чем можно найти на Stack Overflow, обратитесь к этой книге.

Effective Python: 59 Ways to Write Better Python, Brett Slatkin

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

Вы можете читать главы подряд или выбирать только те, которые вам интересны. Каждая статья занимает 2-4 страницы, поэтому ее вполне можно разобрать за один подход.

Всего в книге 8 разделов:

  • Pythonic Thinking
  • Functions
  • Classes and Inheritance
  • Metaclasses and Attributes
  • Concurrency and Parallelism
  • Built-in Modules
  • Collaboration
  • Production

Python Cookbook, David Beazley & Brian K. Jones

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

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

Авторы «поваренной книги» часто выступают с докладами на крупнейших Python-конференциях и активно участвуют в развитии языка.

Пишите код!

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

Перевод статьи The Best Python Books

Программирование на Python: от новичка до профессионала

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

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

1. Первым делом изучите основы. Узнайте, что такое переменные, управляющие структуры, структуры данных. Эти знания необходимы без привязки к конкретному языку.

2. Займитесь изучением литературы. Начните с классики – Dive into Python. Эта книга вообще может стать настольной. Еще можно почитать Майкла Доусона «Программируем на Python» и Алексея Васильева «Python на примерах. Практический курс по программированию». Доусон – опытный программист и преподаватель, а в книге учит программировать, создавая простые игры. В книге Васильева, напротив, больше внимания уделяется основам и теории.

3. Практикуйтесь. Можно (и нужно) делать это параллельно с изучением теории. Пройдите курс Learn Python на Codecademy: вся необходимая для выполнения заданий теория подается прямо во время заданий. Как вариант, можно посетить Питонтьютор – бесплатный интерактивный курс по Python на русском.
Также есть хорошие курсы на Stepik:
Программирование на Python, Python: основы и применение

4. Пройдите курс «Введение в компьютерные технологии и программирование на языке Python» от MIT.

5. Узнайте, какие библиотеки и инструменты Python и для каких целей используют другие питонисты. Найдите что-то интересное для себя.

6. Если вас интересуют веб-технологии, обратите внимание на фреймворки Flask и Django. Узнайте, для каких целей какой из них лучше подходит, начните изучать тот, что подходит вам.

7. Узнайте, как получать и анализировать массивы данных с отдельных сайтов, со всего Интернета и вообще откуда угодно – только старайтесь держаться в рамках закона.

8. Ищите информацию о методах машинного обучения.

9. Оптимизируйте работу с инструментами, автоматизируйте рутину и все, что еще не автоматизировано.

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

Полезные ресурсы

Python Tutor

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

Bucky Roberts на YouTube

Если вы не знакомы с программированием, эти туториалы очень вам помогут. Они просты для понимания и охватывают все, что может пригодиться сначала, начиная с установки языка.

Derek Banas про Python на YouTube

Дерек – программист-самоучка, и у него свой взгляд на подход к изучению языков программирования. Он делает небольшие видеообзоры на различные языки длиной в 40-60 минут, в которых рассказывает все, что нужно, чтобы в общих чертах понять назначение языка.

Corey Schafer на YouTube

У Кори хорошие видео на тему форматирования строк, генераторов, программистских терминов (комбинации и перестановки, DRY, замыкания) и многого другого, что поможет понять основные концепции.

Django Getting Started

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

Введение во Flask

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

Полезные ссылки

Новичку

Python 3 для начинающих
«Укус Питона» (англ. «A Byte of Python»)
Видеолекции от JetBrains
Спецкурс ВМК МГУ по Python
Интерактивный онлайн-учебник
Бизли Д. «Python. Подробный справочник» (2010, PDF)
Прохоренок Н.А. «Python 3 и PyQt. Разработка приложений» (2012, PDF)
Программирование на Python 3.Подробное руководство
Программирование на Python для начинающих (2015, PDF)
Самоучитель Python 3 (2015, PDF)

Знающему основы для углубленного изучения

М. Лутц «Программирование на Python, 4-е издание» (2011, PDF): первый том, второй том
Программирование компьютерного зрения на Python (2016)
Л. Рамальо «Python. К вершинам мастерства» (2015)
М. Лутц «Изучаем Python» (4-е издание) (2011, DjVu)
Justin Seiz «Gray Hat Python»(rus) (2012, PDF)
Гифт Н., Джонс Дж.М. «Python в системном администрировании UNIX и Linux» (2009, PDF)
М. Саммерфилд «Программирование на Python 3. Подробное руководство» (2009, PDF)

Профессионалу

Много всего на Хабрахабре
Подборка англоязычных книг по различным областям применения Python
Python Machine Learning (2015, PDF)

Видеоматериалы

Некоторые записи видео-конференции Python Meetup

Путь Python Junior-а в 2017

10 скрытых особенностей Python

Python 3 для начинающих и чайников

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

Этот сайт призван помочь начинающим и чайникам научиться программировать на python 3. Также здесь можно подробнее узнать об особенностях функционирования этого языка.

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

Python 3: преимущества и недостатки языка

  1. Python — интерпретируемый язык программирования. С одной стороны, это позволяет значительно упростить отладку программ, с другой — обуславливает сравнительно низкую скорость выполнения.
  2. Динамическая типизация. В python не надо заранее объявлять тип переменной, что очень удобно при разработке.
  3. Хорошая поддержка модульности. Вы можете легко написать свой модуль и использовать его в других программах.
  4. Встроенная поддержка Unicode в строках. В Python необязательно писать всё на английском языке, в программах вполне может использоваться ваш родной язык.
  5. Поддержка объектно-ориентированного программирования. При этом его реализация в python является одной из самых понятных.
  6. Автоматическая сборка мусора, отсутствие утечек памяти.
  7. Интеграция с C/C++, если возможностей python недостаточно.
  8. Понятный и лаконичный синтаксис, способствующий ясному отображению кода. Удобная система функций позволяет при грамотном подходе создавать код, в котором будет легко разобраться другому человеку в случае необходимости. Также вы сможете научиться читать программы и модули, написанные другими людьми.
  9. Огромное количество модулей, как входящих в стандартную поставку Python 3, так и сторонних. В некоторых случаях для написания программы достаточно лишь найти подходящие модули и правильно их скомбинировать. Таким образом, вы можете думать о составлении программы на более высоком уровне, работая с уже готовыми элементами, выполняющими различные действия.
  10. Кроссплатформенность. Программа, написанная на Python, будет функционировать совершенно одинаково вне зависимости от того, в какой операционной системе она запущена. Отличия возникают лишь в редких случаях, и их легко заранее предусмотреть благодаря наличию подробной документации.

Изучение языка программирования python — это просто и понятно даже для чайников. Уже сейчас вы можете скачать python и написать свою первую программу!

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

ТОП-10 книг по Python: эффективно, емко, доходчиво

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

The Python Tutorial – Yeradis P. Barbosa Marrero

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

Intermediate Python – Obi Ike-Nwosu

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

Data structures and algorithm using Python – Rance D. Necaise

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

Изучаем Python – Марк Лутц

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

Python Data Analysis – Ivan Idris

Достойные Python книги на русском встречаются редко, но это тот случай. Вы научитесь правильно работать и оперировать модулями Python, изучите основы NumPy и NoSQL. Автор рассказывает, как начать работать с инструментами анализа данных в Pandas, а также о создании диаграмм, статических и интерактивных визуализаций с помощью matplotlib.

Изучаем Python. Программирование игр и веб-приложения – Эрик Мэтиз

Из этой Python книги вы узнаете, как создавать игры, визуализировать различные данные и научитесь создавать веб-приложения на Django. Будут рассмотрены как основы (циклы, списки, классы), так и более углубленные вопросы по типу написания собственной игры.

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

Если вы работаете в сфере Data Science или хотите узнать что-то новое, то обучение можно начать с данной книги Python. В ней вы найдете ответы на вопросы по вычислительным и статистическим методам, передовым алгоритмам разработки, манипулированию данными и т. д.

Learning to program using Python – Cody Jackson

Изучаем программирование в легкой и дружественной форме. Эту и другие Python книги скачать можно на нашем Telegram-канале.

Deep Learning with Python – Francois Chollet

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

Введение в машинное обучение – Андреас Мюллер

Без этой Python книги на русском не обойтись. Вы будете использовать библиотеки scikit-learn, NumPy и matplotlib, а также сможете создать свою систему машинного обучения.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *