Самоучитель 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: 10 простых шагов
В прошлой статье мы рассказали о том, что такое Пайтон, где его применяют и почему он так популярен. Сегодня же разберемся, с какой стороны подойти к его изучению и как сделать процесс максимально эффективным. Если тебя заинтересовал этот язык программирования, оставайся с нами. У нас есть план из десяти шагов.
Шаг 1: определи цель
Путь самурая – это только в кино драматично и красиво. В реальной жизни, чтобы чего-то достичь, нам обязательно нужна цель. Подумай о том, что тебя мотивирует. Возможно, хочешь создавать сайты, игры, приложения или анализировать данные. Нужно найти что-то интересное и тогда изучение Python не превратится в скучные школьные уроки, с которых хочется сбежать. К тому же от выбранной области будет зависеть список программ и инструментов, которые тебе придется освоить. Планирование – наше все.
Шаг 2: установи Python
Да, вот так сразу. Зайди на официальный сайт и скачай в разделе Downloads актуальную версию Пайтона. Установка не займет много времени и кажется мелочью. Но это докажет твою решимость что-то изменить и двигаться дальше. К тому же обучение требует практики. Будет интересно!
Шаг 3: нам нужен план
Будем исходить из того, что твоя цель – стать Junior-разработчиком. Мы не знаем, какую сферу ты выбрал (уверены, что-то крутое). Поэтому просто перечислим то, что тебе желательно знать:
- Синтаксис. Включает понимание основных элементов языка: типы данных, переменные, операторы, условные операторы и циклы.
- Модули и функции . Нужно уметь создавать и применять функции для организации кода и повторного использования, а также работать с модулями.
- Структуры данных. Это про словари, списки, множества и кортежи для хранения и манипулирования данными.
- Объектно-ориентированное программирование. Изучи принципы ООП, такие как объекты, классы, инкапсуляция, полиморфизм и наследование.
- Работа с файлами . Как открывать, читать и записывать данные в файлы, а также работать с разными форматами.
- Обработка исключений . Понимание работы с исключениями и умение обрабатывать ошибки в программе для более надежного выполнения кода.
- Базовые концепции алгоритмов и структур данных. Подразумевает знание основных алгоритмических понятий, таких как сортировка, поиск и обход структур данных.
- Работа с библиотеками. Научись пользоваться стандартными библиотеками Python вроде random, math и datetime, а также популярными сторонними библиотеками: Pandas, NumPy и Flask. Их очень много и это только несколько примеров.
- Чтение и понимание кода. Натренируй способность понимать и анализировать не только свой код, но и других Python-разработчиков . Так ты сможешь присоединиться к уже существующим проектам и вносить в них свой вклад.
- Основы тестирования. Основные принципы тестирования ПО и написания простых тестов для проверки функциональности кода.
Это общий список того, что нужно знать про язык программирования Python для начинающих . Дальше придется углубляться в эти и другие концепции, исследовать новые технологии и инструменты.
Шаг 4: как выучить Python
Пайтон можно учить самостоятельно или на курсах. В интернете очень много теоретической информации. Это одновременно и хорошо, и плохо. Ты можешь просто загрузнуть во всех этих видео и статьях. Потратить время, но так и не продвинуться. А еще, кроме теории, нужна практика и обратная связь.
Для изучения Python лучше всего пойти на курс со структурированным обучением и менторами, которые ответят на твои вопросы и объяснят, как все работает в реальной жизни, а не весь этот сферический код в вакууме.
Кроме курса, можно подключить самостоятельное обучение: видео, подкасты, блоги, гайды и.д. Вот лучшие книги по Python:
- «Learn Python the Hard Way» (Zed A. Shaw) – отличная книга для новичков с практическими задачами.
- «Python Programming: An Introduction to Computer Science» (John Zelle) – основы программирования, структуры данных, алгоритмы и другие важные темы.
- «Automate the Boring Stuff with Python» (Al Sweigart) – твой вариант, если хочешь использовать язык Python для автоматизации.
- «Learning Python» (Mark Lutz) – введение в объектно-ориентированное программирование.
- «Python Crash Course» (Eric Matthes) – покрывает основные концепции языка, включая функции, классы, работу с файлами и синтаксис. В ней много практических проектов и примеров.
Ну и про английский не забывай. Он правда-правда важен.
Шаг 5: высвободи время
Сразу скажем, не получится выучить Python за 2-3 недели и даже нескольких месяцев для этого будет мало. В GoIT курс занимает 10 месяцев, и на учебу нужно выделять примерно 15 часов в неделю. Но зато ты получишь все нужные знания, поддержку менторов и 3 готовых проекта (а без портфолио никуда).
Шаг 6: практикуйся
Практика – ключевой момент в изучении Python для начинающих и примерно 70% успеха. Пиши небольшие программы и проверяй, чтобы они запускались и правильно работали. Решай задачи и пробуй автоматизировать рутину. Напиши игру на Python и приложение, которое парсит информацию из соцсетей, когда у тебя будет достаточно знаний. Или скрипт для автоматического резервного копирования файлов. Вариантов много – найди то, что нравится.
Старайся писать чистый и хорошо организованный код. Используй понятные имена переменных и функций, разделяй код на логические блоки и придерживайся стандартов Пайтона (PEP8, например).
Шаг 7: общайся с единомышленниками
Вокруг Python сформировалось огромное сообщество разработчиков со всего мира. Существует много тематических форумов, где можно получить совет, найти интересную информацию или что-то обсудить. Еще общайся со студентами своего курса для дополнительной мотивации, ходи на вебинары и воркшопы. Поддерживающая среда единомышленников – это важно.
Шаг 8: создай проект
Это может быть приложение, игра, простой искусственный интеллект на Python или инструмент для анализа данных. Чем больше примеров в портфолио – тем лучше. Можно объединиться с другими студентами и написать что-то вместе. Именно поэтому на наших курсах обязательно есть реальные проекты, которые ты сможешь показать будущему работодателю.
Шаг 9: изучай примеры кода
Читай и анализируй код на Python, чтобы понять, как он работает или изучить новые концепции и приемы программирования. Ищи открытые исходные коды проектов и смотри, какие методы и функции используют опытные разработчики для достижения конкретных целей.
Шаг 10: никогда не останавливайся
Python– это язык, который постоянно развивается, поэтому оставайся любопытным и не прекращай изучать его новые инструменты и возможности. Экспериментируй, задавай вопросы, ищи оптимальные решения и становись крутым программистом.
Теперь ты знаешь про Пайтон чуть больше. А в следующей статье поговорим о том, чем занимаются разработчики и какие навыки им нужны. Не бойся начинать обучение, мы в тебя верим!
Старт в 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 и зарабатывать программированием, приходите в Практикум — там помогут и с теорией, и с практикой, и с тем, чтобы найти работу после окончания учёбы.
Хочу научиться программировать на Python. С чего начать?
Рассказываем, что нужно выучить в первую очередь, где брать знания и интересные задачи для тренировок.
Рассказываем, как действовать, если вы решили освоить Python 3 с нуля: что учить в первую очередь, где брать знания и что делать дальше?
Зачем учить Python?
Python имеет ряд преимуществ:
- высокая популярность языка и использование в большом количестве проектов;
- сравнительно простой, но в то же время строгий синтаксис;
- множество доступных сред разработки, сервисов и фреймворков;
- средства для работы с электронной почтой, протоколами Интернета, базами данных и другие инструменты в стандартной библиотеке языка;
- востребованность Python-разработчиков на рынке труда.
Среди главных особенностей — динамическая типизация, проблемы с совместимостью версий, а также низкая скорость выполнения кода по сравнению с другими языками программирования. Если вы учите Python не первым языком, синтаксис может показаться вам непривычным.
Python для создания продуктов используют такие корпорации, как Google, Dropbox, Mozilla, Yandex, Red Hat, Microsoft, Intel и другие.
Что учить?
Синтаксис
В первую очередь:
- операции с целыми и вещественными числами;
- типы данных;
- переменные, ветвления, стандартный ввод/вывод;
- логические операции, операции сравнения;
- условия: if , else , elif ;
- блоки, отступы;
- строки и символы;
- циклы while , for ;
- операторы break , continue ;
- установка и подключение модулей;
- списки;
- функции;
- словари;
- интерпретатор: установка, запуск скрипта;
- файловый ввод/вывод.
Дополнительно
- Python в одной картинке;
- Карта развития разработчика;
- Подборка Awesome Python.
- Подборка Python-библиотек для Data science.
IDE и редакторы кода
Писать в IDLE или Python Shell удобно только простой код, но для проектов лучше найти интегрированную среду разработки (IDE) или редактор кода. IDE включает в себя редактор с подсветкой синтаксиса и автодополнением, инструменты сборки, выполнения и отладки и другие функции. В большинстве редакторов есть подсветка синтаксиса и форматирование, выполнение и отладка кода. Как правило, этот инструмент работает быстрее IDE, но имеет меньше функций. Среди самых популярных платформ — PyCharm, Wing IDE, Komodo и другие. Больше вариантов — в нашем обзоре.
Git
С распределенной системой управления версиями (Git) нужно познакомиться в начале обучения. Среди основных навыков — создание и перемещение файлов в каталогах, инициализация Git-репозитория и создание коммитов, а также настройка репозиториев в GitHub.
Где учить?
Попробуйте каждый из инструментов. После пары первых уроков будет ясно, подходит он вам или нет.
Учебники
Простой и краткий русскоязычный учебник для изучения основ от Devpractice
Популярный учебник Марка Лутца с примерами, советами и задачами
Другие хорошие книги по Python — в нашей подборке.
Онлайн-курсы на русском языке
- Stepik;
- Geekbrains;
- Питонтьютор;
- Курс от Mail.Ru Group и МФТИ;
Онлайн-курсы на английском языке
- Codecademy;
- PyCharm Edu от JetBrains;
О том, как еще учить Python — в нашей статье.
Все выучил, что дальше?
Когда вы научились составлять простые программы, надо постараться понять, в какую сторону вы хотите двигаться. Для этого начните решать задания:
- тест на читабельность кода и тест на знание языка;
- проект Эйлера на английском и русском учит составлять правильные алгоритмы;
- игра с заданиями по уровням со встроенной средой программирования;
- квест в котором нужно составить алгоритм, чтобы понять, как перейти к следующему шагу.
В следующей части мы расскажем, как учиться дальше.