С чего начать изучение Python: книги для начинающих

Друзья, забирайте в закладки подборку из 17 книг по Python.
Подборка поможет вам освоить язык программирования с нуля или с минимальными знаниями.
Готовы приступить к изучению Python?
Начинаем подготовку к изучению Python
Если вы не переходите на Python с другого языка программирования, а начинаете с нуля, сначала разберитесь в базовых понятиях разработки. Чтобы читать техническую литература на английском, подтяните уровень языка. В этом помогут книги:
Новички могут легко утонуть в профессиональных понятиях. Эта книга поможет разобраться в терминологии: что такое функции, функциональное и объектно-ориентированное программирование, как структурировать и развернуть программу, как хранить, управлять и обмениваться данными.
Даже если вы хорошо владеете английским, профессиональная терминология может загнать в тупик — потратите время на гугление. Этот учебник с аудиокнигой и интерактивными словарями поможет подтянуть уровень грамматики и пополнить словарный запас техническими терминами.
Учебный курс, который поможет улучшить навыки грамматики, пополнить словарный запас техническими терминами. Фишка книги — она содержит тексты и диаграммы для лучшего понимания материала, словарь современных вычислительных терминов, сокращений и символов.
Знакомимся с Python
Начните изучать язык программирования с теоретических основ — разберитесь в терминах, принципах работы языка. Для этого изучите книги:
Простая книга для введения в Python — автор объясняет основные термины, особенности языка доступным языком. Издание в основном теоретическое, из практики — руководства по созданию нескольких элементарных программ.
Опытный разработчик и преподаватель рассказывает об основных принципах разработки на примерах создания простых игр. После каждой главы автор предлагает проект игры, резюме пройденного материала и задачи для закрепления. После прочтения вы освоите базовые навыки разработки на Python и научитесь применять их на практике.
Переходим к практике
Когда разберетесь в теоретических основах, переходите на книги с практикой — реальными примерами кода, задачами, руководствами по разработке первых простых проектов:
Автор описывает основные типы объектов в Python, порядок их создания и дальнейшей работы с ними, рассказывает об основном процедурном элементе языка — функциях. После каждой главы приводит контрольные вопросы для закрепления материала, а после каждой части — практические упражнения.
Руководство по использованию Python в различных сферах — системном администрировании, создании веб-приложений и графических интерфейсов. Автор рассказывает, как работать с базами данных, программировать сетевые взаимодействия, создавать интерфейсы для сценариев и других задач.
Книга разработчика Лучано Рамальо для тех, кто уже научился писать на языке Python, но еще не использует все его возможности. Автор рассказывает о базовых средствах и библиотеках языка и приводит наглядные примеры, как сделать код короче, понятнее и быстрее.
Пошаговое руководство для новичков, которые хотят освоить язык программирования с нуля. Автор объясняет базовый синтаксис, учит работать с типами данными и переменными, классами и объектами, обрабатывать файлы и исключения.
Эта книга — полноценное руководство по Python, состоящее из четырех частей. Новичкам стоит изучить первую часть книги. Автор просто и понятно рассказывает о механизмах работы Python, как разобраться в основах языка и написать свою первую программу.
Пошаговое руководство, которое поможет освоить язык Python и применять его на практике. Автор рассказывает, как запустить первую программу, описывает переменные, типы данных, идентификаторы и делится другой полезной информацией.
Книга для новичков, которые уже освоили язык Python и хотят программировать лучше. Автор рассказывает, как использовать паттерны программирования, чтобы улучшить код, проводить распараллеливание и компиляцию программ, объясняет принципы высокоуровневого сетевого программирования и графики.
Продолжаем изучение: книги о Python по направлениям
Python можно использовать для решения многих задач — работы с сайтами, веб-приложениями, машинного обучения. Определитесь, в каком направлении хотите развиваться, и начните с профильной литературы:
Автор подробно рассказывает, как писать геоприложения. Вы научитесь получать доступ к геоданным и визуализировать их, читать и записывать данные в векторном и растровом формате, хранить и получать доступ, выполнять геопропространственные расчеты на языке Python.
Руководство, как примененять скрипты Python и веб-API, чтобы собирать и обрабатывать данные с тысяч сайтов. Будет интересна программистам и веб-администраторам, которые хотят изучить работу веб-скраперов, освоить анализ сырых данных и тестирование интерфейса.
Книга для новичков. Авторы доступно для понимания рассказывают, как строить системы машинного обучения, подробно объясняют этапы работы с применением Python и библиотек scikit-learn, NumPy и matplotlib.
Книга о Django — фреймворке для разработки веб-приложений на Python. Авторы рассказывают о компонентах фреймворка и методах работы с ним, приводят примеры применения в разных проектах.
Автор учит работать с популярным фреймворком Flask, приводит пошаговое руководство, как создать приложение социального блогинга. Узнаете возможности фреймворка, научитесь расширять приложения дополнительными технологиями.
- python
- книги по программированию
- книги по python
Самоучитель Python

Самоучитель Python 3, собранный из материалов данного сайта. Предназначен в основном для тех, кто хочет изучить язык программирования Python с нуля.
Доступна также pdf-версия самоучителя
- Возможности языка Python
- Загрузка и установка Python
- Первая программа. Знакомство со средой разработки IDLE
- Синтаксис
- Почему моя программа не работает?
- Условный оператор if
- Циклы
- Ключевые слова, встроенные функции (для ознакомления, знать, как не стоит называть переменные)
- Числа
- Строки (часть 1, часть 2, форматирование)
- Списки (массивы)
- Индексы и срезы
- Кортежи
- Словари
- Множества
- Функции
- Исключения и их обработка
- Байтовые строки
- Файлы
- With … as — менеджеры контекста
- PEP 8 — руководство по написанию кода на Python (следовать (да и читать) необязательно, но очень рекомендуется, для того, чтобы вы смогли понять свой код через полгода)
- Документирование кода (тоже полезная вещь)
- Создание и подключение модулей
- Объектно-ориентированное программирование. Основы
- Инкапсуляция, наследование, полиморфизм
- Перегрузка операторов
- Декораторы
Литература
Полезные материалы
Самоучитель не полный, будет дополняться и совершенствоваться. Пишите, предлагайте идеи, помогайте писать статьи 🙂
- Модуль csv — чтение и запись CSV файлов
- Создаём сайт на Django, используя хорошие практики. Часть 1: создаём проект
- Онлайн-обучение Python: сравнение популярных программ
- Книги о Python
- GUI (графический интерфейс пользователя)
- Курсы Python
- Модули
- Новости мира Python
- NumPy
- Обработка данных
- Основы программирования
- Примеры программ
- Типы данных в Python
- Видео
- Python для Web
- Работа для Python-программистов
- Сделай свой вклад в развитие сайта!
- Самоучитель Python
- Карта сайта
- Отзывы на книги по Python
- Реклама на сайте
Подпишись на обновления по RSS или по почте!
С чего начать учить Python


Анна Агабекян Эксперт в Frontend, Data Science. Ментор, автор курсов в SkillFactory.
Python — один из самых популярных языков программирования. На нем разрабатывают алгоритмы машинного обучения, собирают и анализируют данные о клиентах в крупных компаниях, пишут игры. Вместе с Python-разработчицей Анной Агабекян рассказываем все, что нужно знать на старте новичку.

Освойте профессию
«Python-разработчик»
Где используется язык программирования Python?
По замыслу создателя языка Гвидо ван Россума, Python должен был повысить продуктивность разработчиков, пишущих на языках C и C++. Однако благодаря своей простоте язык быстро приобрел популярность в среде программистов и вышел за рамки своего первоначального назначения. Чаще всего язык применяется в веб-разработке, анализе больших данных и машинном обучении. Кроме того, на Python пишут сценарии для компьютерных игр (например World of Tanks и EVE Online). В 2023 году в рейтинге TIOBE, который формируется на основе поисковых запросов, включающих упоминание языков, Python занимает первое место среди самых востребованных языков, обогнав Java и C.
Python-разработчик
Освойте Python, самый популярный язык программирования
3 383 ₽/мес 6 150 ₽/мес

У языка есть собственный свод правил, так называемый «дзен Python», который написал американский разработчик Тим Петерс. Одно из правил звучит так: «Должен существовать один — и желательно только один — очевидный способ сделать это». Это правило отлично описывает назначение языка: с его помощью можно один раз решить задачу, а потом просто автоматизировать ее.
Как изучать Python?
Синтаксис
- Один из самых популярных — Computer Programming for Beginners: Fundamentals of Programming Terms and Concepts Натана Кларка. Книга написана простым языком — она поможет разобраться в терминологии, понять, что такое состояния, операторы и функции, чем объектно-ориентированное программирование отличается от функционального.
- На русском языке можно обратить внимание на книгу преподавателя и разработчика Майкла Доусона «Программируем на Python» — книга хороша тем, что в ней не только теория, но и реальные кейсы, показывающие, как применять полученные знания на практике. После каждой главы Доусон поясняет тему на примере простой игры и предлагает задачи для закрепления материала.
- Подробнее о функциях (часть приложения, выполняющая определенную задачу) можно узнать из книги Марка Луца «Изучаем Python».
- Для тех, кто уже усвоил основы языка, но еще не умеет использовать все его возможности, будет полезной книга Лучано Рамальо «Python: к вершинам мастерства». Автор рассказывает о библиотеках и средствах языка, а также демонстрирует приемы, с помощью которых код можно сделать короче и понятнее.

Станьте разработчиком на Python и решайте самые разные задачи: от написания кода до автоматизации процессов
Подборка полезных видеоуроков на YouTube:
- Python для начинающих — короткие видеоуроки, посвященные основам языка;
- Видеоуроки Python — среди прочего тут есть, например, ролики, как редактировать видео на Python или работать с Википедией с помощью этого языка;
- Clever Programmer — видеоуроки по программированию, советы и рекомендации, как прокачать свои навыки;
- Telusko — более 100 роликов, посвященных Python: от начального до продвинутого уровня.
Python имеет несколько направлений, поэтому стеки и технологии, которые нужно знать новичку, зависят от специализации. Например, для начинающего веб-разработчика необходимо прежде всего знание фреймворков Django и Flask. Для дата-аналитики или Data Science нужно уметь работать с библиотеками, предназначенными для обработки и анализа данных: NumPy, Pandas , Sklearn, TensorFlow. Для разработки десктоп-приложений в первую очередь важно знать библиотеку Tkinter и фреймворк PyQt5, для мобильной разработки — уметь работать в среде Kivy, для разработки игр — знать набор библиотек Pygame.
Настройка среды разработки
Изучив синтаксис, можно начать писать код. Для этого скачайте и установите среду разработки — IDE. Она объединяет несколько инструментов, предназначенных для разработки: редактор кода, инструменты для сборки, выполнения и отладки, а также систему контроля версий.
Читайте также Выбираем IDE: средства для программирования на Python
Самый базовый редактор — IDLE. Гвидо ван Россум назвал его в честь одного из актеров «Монти Пайтона» — Эрика Айдла. C помощью этой среды разработки можно просматривать, редактировать, запускать и отлаживать программы на Python. IDLE поставляется вместе с дистрибутивом. Скачайте и запустите редактор и в открывшемся окне можете начинать писать код.
Практика: сервисы и сайты
Решайте задачи. Их можно взять, например, на проекте Эйлера — это некоммерческий онлайн-проект, названный в честь знаменитого швейцарского математика Леонарда Эйлера. Проект (есть на русском и английском языке) объединяет сотни тысяч любителей математики и программирования — участники могут выбрать одну из задач и решить ее с помощью любого известного им языка программирования, в том числе с помощью Python. После того как участник получил правильный ответ, он может обсудить и сравнить с другими пользователями найденные им алгоритмы и способы решения.
Сайты, где еще можно порешать задачи Python:
Участвуйте в играх и квестах: например, chekio — это игра с заданиями разных уровней сложности и встроенной средой программирования или квест python challenge, в котором надо составить алгоритм, чтобы перейти к следующему шагу. Поискать задачки и упражнения также можно в соответствующем хабе на Хабре.
Напишите собственные несложные программы. Например, настроить автоматическую сортировку файлов по папкам, создать собственный сервер или написать игру на Python.
Читайте также Я освоила Python на карантине и теперь работаю в консалтинге
Что дальше?
Python-разработчик — востребованная профессия с высокими зарплатами. Свои первые заказы можно искать на онлайн-биржах, например fl.ru, weblancer.net, workzilla, или в Telegram-каналах с удаленной работой: Finder.vc, HomeWork и других.
Начинающий Python-разработчик получает от 80 тыс. рублей, а лид может рассчитывать на зарплату около 400 тыс. рублей.
От джуниора, помимо знания синтаксиса и основных библиотек, работодатели ждут умения быстро осваивать новый материал, вникать в суть задания, понимать требования и быть готовым к рутинным задачам.
Карьерный рост зависит от компаний, в которых работает специалист, от его личных особенностей, от наличия опытных коллег, у которых можно учиться и от владения soft skills.
Тестировщик-автоматизатор
Как ворваться в IT, даже если вы не умеете программировать? Стать тестировщиком. Для старта достаточно базовых знаний ПК. А начать работать можно уже через 4 месяца обучения.
Старт в Python для новичков: с чего начать
Python — универсальный язык программирования: на нём можно делать нейросети, запускать нейросети, собирать сайты и создавать что угодно ещё. Мы собрали всё, что нужно для быстрого старта в Python, — с теорией и практикой, чтобы можно было сразу сделать что-то полезное для себя.
Что такое Python
Python — язык программирования высокого уровня. Это значит, что разработчику не нужно знать, как работает процессор или как устроена память, чтобы писать код. Вместо этого он пишет простые команды, а компьютер берёт на себя все вопросы по тому, как это должно работать.
Как отмечает большинство разработчиков, когда начинаются разговоры про Python, — у него безупречный и аккуратный код. Чтобы оформить любой логический блок, например содержимое функции, просто используют отступы и пробелы. Не нужно проверять, не потерялась ли по пути лишняя скобка — всё видно сразу. Одна команда занимает одну строку, поэтому разделители команд тоже не нужны.
Вот как красиво выглядит синтаксис на Python:
a=0 print('Введите число: ') input(a) if a==0: print('Вы ввели ноль') else: print('Вы однозначно ввели не ноль')
В какой бы области вы ни делали проект, скорее всего, для этого уже есть готовая Python-библиотека. Обработка изображений, математика, распознавание речи — для всего есть инструменты. Чтобы вы понимали, насколько это универсальный язык, посмотрите, для чего используют Python-библиотеки:
- NumPy — машинное обучение и искусственный интеллект;
- Django и Flask — веб-разработка и веб-приложения (например, Pinterest, YouTube и Instagram написаны на Django);
- SQLAlchemy — базы данных и обработка больших объёмов информации;
- Cocos2d — мобильные и браузерные игры;
- Tornado — приложения, которые требуют высокой производительности и должны работать одновременно с сотней тысяч пользователей;
- Bubot — программирование робототехники, как вариант — использование на Raspberry Pi.
Python можно запустить практически на любой платформе — от КПК до серверов — и на любой операционной системе. Правда, есть ограничения. Как только платформа полностью устаревает и перестаёт использоваться (например, Windows 95), прекращается её поддержка в новых версиях языка.
Ещё в Python есть поддержка ООП — объектно-ориентированного программирования, но про это мы ниже поговорим отдельно.
Почитать подробнее про Python:
Как установить
Установка Python простая и занимает от силы 10 минут. Вот статья, как установить Python под Windows и как с ним работать. Для MacOS всё почти то же самое, а если у вас Linux, то вы лучше нас знаете, как это сделать:
Ещё 10 уйдёт на скачивание и настройку редактора кода — в нём пишут текст программы. Также редакторы кода умеют находить простые ошибки и подсвечивать проблемные места.
Как начать писать
Синтаксис — это то, какие команды и конструкции есть в языке, а также правила оформления кода. Главное, что нужно запомнить: в Python нет точек с запятой в конце, а все вложенные конструкции оформляются отступами. Например, вот как выглядит оформление цикла — сразу видно, что куда относится:
a = 5 b = 10 # Условный оператор if a == b: # выводим результат, если верно print('a = b') else : # если условие неверное — выводим другое сообщение print('a ≠ b') # условные операторы— И, ИЛИ, НЕ if a > 5 and b < 10 or not a != b: print('Сложное условие сработало')
Подробно про синтаксис для начинающих:
На вырост: объектно-ориентированное программирование
В Python есть полная поддержка ООП — это значит, что в нём можно пользоваться всей мощью и преимуществами такого подхода. На старте такое может не пригодиться, но как немного освоитесь — обязательно попробуйте, очень мощная штука.
Основная задача ООП — сделать сложный код проще. Для этого программу разбивают на независимые блоки, которые мы называем объектами.
Объект — это всего лишь набор данных и функций, таких же, как в традиционном функциональном программировании. Можно представить, что просто взяли кусок программы и положили его в коробку и закрыли крышку. Вот эта коробка с крышками — это объект:

Программисты договорились, что данные внутри объекта будут называться свойствами, а функции — методами. Но это просто слова — по сути, это те же переменные и функции.
Объект можно представить как независимый электроприбор у вас на кухне. Чайник кипятит воду, плита греет, блендер взбивает, мясорубка делает фарш. Внутри каждого устройства куча всего: моторы, контроллеры, кнопки, пружины, предохранители — но вы о них не думаете. Вы нажимаете кнопки на панели каждого прибора, и он делает то, что от него ожидается. И благодаря совместной работе этих приборов у вас получается ужин.
Такой подход позволяет программировать каждый модуль независимо от остальных. Главное — заранее продумать, как модули будут общаться друг с другом и по каким правилам. При таком подходе вы можете улучшить работу одного модуля, не затрагивая остальные — для всей программы неважно, что внутри каждого блока, если правила работы с ним остались прежними.
Почитать про ООП:
Проекты
Лучший способ освоить новый язык программирования — сделать на нём что-то полезное и интересное. Собрали проекты в «Коде», с которыми можно справиться даже без большого опыта в программировании, — с комментариями, пояснениями и разбором.
Попроще:
- Делаем свой таймер на Python
- Пишем игру Ним на Python
- Абсолютня: генератор новых слов на Python
- Конец ретроградному Меркурию! Пишем собственный гороскоп на Python
Посложнее:
- Телеграм-бот на Python
- Игра: арканоид на Python
- Работаем с биг-датой: визуализируем данные на Python
- Создаём свою модель распознавания лиц на Python
- Запускаем Python-скрипт на сервере, чтобы он работал всё время
Бонус: что по деньгам
Python-программисты — одни из самых востребованных в ИТ, поэтому с деньгами сейчас так (сейчас — это на октябрь 2023 года):
- джуниоры получают примерно 88 000 ₽;
- мидлы — 190 000 ₽;
- сеньоры — 315 000 ₽.
По данным Хабр Карьеры, средняя зарплата python-разработчика составляет почти 190 тысяч:

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