Python за месяц

Месяц — это много времени. Если тратить на обучение по 6-7 часов каждый день, то можно сделать дофига.
Цель на месяц:
- Ознакомиться с основными понятиями (переменная, условие, список, цикл, функция)
- Освоить на практике более 30 проблем программирования
- Собрать два проекта, чтобы применить на практике новые знания
- Ознакомиться хотя бы с двумя фреймворками
- Начать работу с IDE (средой разработки), Github, хостингом, сервисами и т. д.
Теперь план по неделям.
![]()
Статья переведена при поддержке компании EDISON Software, которая дает дельные советы юниорам, а также проектирует программное обеспечение и пишет ТЗ на русском и английском.
Первая неделя: познакомьтесь с Python
Разберитесь как все устроено в Python. Проверьте как можно больше вещей.
- День 1: 4 основных концепта (4 часа): ввод, вывод, переменная, условия
- День 2: 4 основных концепта (5 часов): список, цикл for, цикл while, функция, импорт модулей
- День 3: Простые проблемы программирования (5 часов): поменять местами две переменные, перевести градусы Цельсия в градусы по Фаренгейту, посчитать сумму всех разрядов в числе, проверить число на простоту, сгенерировать случайное число, удалить дубликат из списка
- День 4: Проблемы программирования средней сложности (6 часов): перевернуть строку (проверить на палиндром), посчитать наибольший общий делитель, объединить два отсортированных массива, написать игру на угадывание чисел, посчитать возраст и т.д.
- День 5: Структуры данных (6 часов): стек, очередь, словарь, кортежи, связный список
- День 6: ООП — Объектно-ориентированное программирование (6 часов): объект, класс, метод и конструктор, ООП наследование
- День 7: Алгоритм (6 часов): поиск (линейный и бинарный), сортировка (методом пузырька, выбором), рекурсивная функция (факториал, ряд Фибоначчи), временная сложность алгоритмов (линейных, квадратичных, константных)
Я понимаю, звучит противоречиво. Но поверьте мне. Я знаю кучу людей, у которых отпало всякое желание изучать что-либо после того как они не смогли установить среду разработки или ПО. Я советую сразу залезть в андроид приложение вроде Programming Hero или на сайт Repl и начать исследовать язык. Не ставьте себе задачу первым делом установить Python, если вы не особо подкованы технически.
Вторая неделя: начните разработку программного обеспечения (соберите проект)
Получите опыт разработки ПО. Попробуйте использовать все, что вы выучили, чтобы создать настоящий проект.
- День 1: Ознакомьтесь со средой разработки (5 часов): Среда разработки это интерактивная среда, где вы будете писать код для самых больших проектов. Вы должны хорошо знать хотя бы одну среду разработки. Я рекомендую начать с VS code install Python extension или Jupyter notebook
- День 2: Github (6 часов): Изучите Github, создайте репозиторий. Попробуйте закоммитить, запушить код, вычислить разницу между двумя любыми Git деревьями. Также разберитесь с ветвлением, слиянием и пул реквестами.
- День 3: Первый проект: Простой Калькулятор (4 часа): Ознакомьтесь с Tkinter. Создайте простой калькулятор.
- День 4, 5, 6: Личный проект (5 часов каждый день): Выберите один из проектов и начните над ним работу. Если у вас нет идей для проекта, посмотрите этот список: несколько хороших проектов на Python
- День 7: Хостинг (5 часов): Разберитесь с сервером и хостингом, чтобы хостить свой проект. Настройте Heroku и задеплойте сборку вашего приложения.
Просто слепо следуя шагам в уроке или видео вы не разовьете умение думать. Вы должны применить свои знания в проекте. Как только вы потратите все силы на поиск ответа, вы его запомните.
Третья неделя: освойтесь как программист
Ваша цель на 3 неделе получить общее представление о процессе разработки ПО. Вам не нужно будет оттачивать ваши навыки. Но вы должны знать некоторые основы, так как они повлияют на вашу повседневную работу.
- День 1: Основы баз данных (6 часов): Базовый SQL-запрос (Create Table, Select, Where, Update), Функция SQL (Avg, Max, Count), реляционная база данных (Нормализация), Внутреннее соединение, Внешнее соединение и т. д.
- День 2: Используйте базы данных в Python (5 часов): Используйте фреймворк базы данных (SQLite или Pandas), подсоединитесь к базе данных, создайте и добавьте данные в несколько таблиц, считайте данные из таблиц
- День 3: API (5 часов): Научитесь вызывать API, подучите JSON, микросервисы, REST API
- День 4: Numpy (4 часа): Ознакомьтесь с Numpy и попрактикуйтесь в его использовании на первых 30 упражнениях
- День 5, 6: Портфолио сайта (5 часов каждый день): Выучите Django, создайте портфолио сайта на Django, также взгляните на фреймворк Flask
- День 7: Юнит-тесты, логи, отладка (4 часа): Разберитесь с юнит-тестами (PyTest), научитесь работать с логами и проверять их и используйте брейкпоинты
Если вы болеете этой темой и посвящаете ей всего себя, то сможете сделать все за месяц.
- Учите Python постоянно. Начинайте в 8 утра и занимайтесь этим до 5 вечера. Сделайте перерыв на обед и перекусы (в общей сложности час)
- В 8 утра составьте список вещей, которые вы будете изучать сегодня. После уделите час времени, чтобы вспомнить и опробовать на практике все, что выучили вчера.
- C 9 утра до 12 часов дня учите и практикуйтесь поменьше. После обеда наберите обороты. Если вы застряли на какой-то проблеме, поищите ее решение в сети.
- Каждый день тратьте по 4-5 часов на обучение и 2-3 часа на практику. (максимум можете устроить себе один выходной в неделю)
- Ваши друзья решат, что вы сумасшедший. Не разочаровывайте их — соответствуйте образу.
Четвертая неделя: серьезно отнеситесь к тому, чтобы получить работу (стажера)
Ваша цель четвертой недели всерьез задуматься об устройстве на работу. Даже если вы не хотите получать работу прямо сейчас, вы многому научитесь в процессе собеседований.
- День 1: Резюме (5 часов): Создайте одностраничное резюме. В верхней части резюме разместите краткие сведения о своих навыках. Обязательно добавьте список своих проектов с ссылками на Github.
- День 2: Портфолио сайта (6 часов): Напишите несколько блогов. Добавьте их в предыдущее портфолио сайта, которое вы сделали.
- День 3: Профиль LinkedIn (4 часа): Создайте профиль в LinkedIn. Перенесите в LinkedIn все, что есть у вас в резюме.
- День 4: Подготовка к собеседованию (7 часов): Загуглите самые часто задаваемые вопросы на собеседованиях. Попрактикуйтесь в решении 10 проблем программирования, о которых спрашивают на собеседованиях. Делайте это на бумаге. Вопросы с собеседований можно найти на сайтах вроде Glassdoor, Careercup
- День 5: Нетворкинг (
Правда в том, что вы никогда не будете готовы к работе на 100%. Все что вам нужно это очень хорошо выучить 1-2 вещи. И ознакомиться с другими вопросами, чтобы преодолеть барьер собеседований. Как только вы получите работу, вы многому научитесь на ней.
Наслаждайтесь процессом:
Обучение это процесс. На вашем пути обязательно будут трудности. Чем их больше — тем вы лучше как разработчик.
Если вы сможете закончить список за 28 дней, вы большой молодец. Но даже если вы выполните 60-70% списка, вы разовьете необходимые качества и навыки. Они помогут вам стать программистом.
Как выучить Python с нуля? 15 бесплатных курсов и самоучителей

В этой статье мы расскажем, с чего начать изучение популярного языка программирования. На каких сайтах находятся бесплатные курсы и самоучители. Как получить работу в сфере разработки и многое другое.
Содержание статьи:
Где используется Python и для чего?
Основные сферы применения данного языка программирования:
Создание сайтов, интернет-сервисов, порталов, парсеров. Питон используют для программирования серверной части, то есть скриптов, которые отвечают за обработку информации и вычисления. Подробно об этом можно прочитать в описании профессии Backend-разработчик.
Машинное обучение и искусственный интеллект
Создание поисковых систем и других программ, где применяется AI. Например, в Яндексе и Google активно используют данную технологию.
Big Data (анализ и обработка больших массивов данных)
Проведение научных исследований и вычислений, анализ финансовых рынков и составление прогнозов. Основные работодатели – научные центры, банки, инвестиционные фонды.
Помимо указанных областей, язык программирования Питон используют в мобильной разработке (например, в приложении Инстаграм), компьютерных играх, в телекоммуникационном оборудовании, банкоматах, ЧПУ-станках. На этом языке пишут десктоп-программы, например, графический редактор GIMP.
В числе ИТ-компаний, где востребована данная технология: Facebook, Microsoft, Dropbox, Intel, Cisco, HP, IBM, Qualcomm, Seagate и множество других.
Зачем учить Python? Преимущества и недостатки языка
- Популярность и широкое применение. Изучив Питон, вы сможете создавать как простые приложения, так и программировать нейронные сети, анализировать данные и многое другое.
- Востребованность программистов на рынке.
- Высокий уровень зарплат. Новички могут получать от 60 тыс. рублей в месяц, специалисты с опытом – от 100 до 200 тыс. рублей в месяц.
- Относительная простота и легкость обучения.
- Множество готовых библиотек и фреймворков, которые упрощают жизнь.
- Большое и активное сообщество, много информации на русском языке, в том числе самоучителей.
- Подходит новичкам, кто ранее не был связан с программированием, но хочет начать карьеру в этой сфере.
- Непривычный синтаксис. Если вы знаете другие языки программирования, учить Python будет необычно.
- Многие работодатели ищут разработчиков, владеющих несколькими языками. Для получения работы выучить только Питон может быть не достаточно.
- Разные версии языка не совместимы и существуют параллельно.
- Больше всего вакансий открыто в Москве и Санкт-Петербурге. Соискателям из регионов может потребоваться работать удаленно или переезжать в более крупный город.
Что нужно учить в первую очередь?
Базовые знания языка Python
Операторы, выражения, переменные, условный оператор if, ветвления, циклы (while, for), циклы со счетчиком, работа со списками и их сортировка, массивы, кортежи и строки, словари, функции, работа с модулями, работа с файлами (открытие, чтение, запись), основы работы с сетью. Изучить фреймворки, например, Django.
Что такое ООП (объектно-ориентированное программирование), алгоритмы и структура данных, базы данных (какие бывают, как с ними работать).
Системы контроля версий
В первую очередь Git.
Если планируете работать в сфере веб-разработки, лучше дополнительно освоить HTML и CSS, основы JavaScript, научиться верстать адаптивные макеты.
За сколько времени можно выучить Python?
-
От 4 до 6 месяцев, если вы осваиваете только язык программирования без дополнительных технологий. Точное время зависит от уровня начальных знаний и частоты занятий. Например, опытному разработчику достаточно 1-2 недели, чтобы разобраться с синтаксисом языка и что-то начать на нем делать. Если вы учите Пайтон с нуля, то первое время вам будет сложнее ориентироваться в большом объеме новой информации.
От 8 до 12 месяцев, если вы изучаете программирование с нуля и хотите освоить разные технологии, нужные для поиска работы. Например, курс в Skillbox для Питон-разработчиков идет ровно год. Он рассчитан на новичков, и в его рамках обучают самому языку, а также верстке, работе с базами данных и Git.
Бесплатные курсы и материалы для новичков
В интернете много сайтов и видеоуроков, которые можно смотреть бесплатно. Ниже собран их обзор.
Сайты и самоучители, в основном бесплатные:
-
– официальный сайт с документацией, новостями и другой полезной информацией. На английском языке. – позволяет учить язык программирования онлайн без установки среды разработки. Работает прямо в браузере. Много примеров кода, больше сотни заданий. Подходит новичкам и людям, которые раньше не сталкивались с программированием. – на сайте размещены бесплатные уроки для новичков. Здесь можно изучить основы, синтаксис, операторы, циклы, списки, кортежи, словари, функции и многое другое. Есть примеры кода, что упрощает самостоятельное обучение. – самоучитель от одноименной компании на английском языке. – блог с полезной информацией. Отдельного внимания заслуживает раздел с тестами, где можно проверить свои знания. – сайт евангелистов сообщества MoscowPython. Новичкам будет интересен форум, где разбирают задачи и отвечают на вопросы. – самоучитель по версии языка 2.7. Включает 34 урока, в том числе отдельную статью про ООП и классы. – на сайте собрано более 250 видеозаписей докладов и лекций, помогающих выучить Python самому. – база знаний. Много статей на разные темы с примерами кода. Есть отдельный раздел с уроками, основами и библиотеками.
Яндекс.Практикум – онлайн-курс от Яндекса. Первая часть, где обучают азам, бесплатная. Ее можно пройти самостоятельно, а потом решить, что делать дальше.
Также советуем посмотреть 24 сайта для изучения программирования на русском языке. В нем собраны ссылки на полезные справочники, каталоги и другие ресурсы для разработчиков.
Бесплатные видеокурсы:
-
– курс содержит 21 видео. – 12 уроков. – небольшой курс для новичков. Содержит 9 видео. – включает 7 мастер-классов.
ООП для новичков – советуем посмотреть для общего развития.
Также в Клубе фрилансеров вы найдете бесплатные уроки по программированию и верстке. Рекомендуем заглянуть в группу и сохранить себе подборку материалов.
Где учиться программировать на Python?
Самостоятельное обучение подходит не всем. Кроме того, сложно осваивать новые знания с нуля, не имея опыта. Поэтому можно пойти на онлайн-курсы, где готовят разработчиков. Примеры таких программ:
Курс в Skillbox. Подходит новичкам. Здесь учат создавать простые и сложные программы, работать с базами данных, тестировать код, использовать Git. Помимо самого языка, вы освоите фреймворк Django и веб-верстку. Отдельные лекции посвящены построению карьеры.
Курс в Нетологии. Формат обучения: вебинары по вечерам и практика. На момент подготовки обзора отправляли студентов на стажировку в «Ланит». На наш взгляд, заточен для подготовки веб-разработчиков. Например, среди курсовых проектов – интернет-магазин. Если вы хотите работать с сайтами, интернет-сервисами и приложениями, то присмотритесь к нему.
Плюсы обучения на курсах – возможность общаться с практиками, задавать вопросы и быстро получать ответы. Системный подход. Помощь в старте карьеры, поиске стажировки и вакансий. Также в процессе обучения вы получаете не только теоретические знания, но и практику, пишете программы, которые можно показать работодателям на собеседованиях.
Советы для начинающих
- Заранее подумайте, где вы хотите работать. Например, в области веб-разработки или анализа данных. От этого зависит, какие библиотеки и дополнительные технологии потребуется учить. Их в ИТ много, поэтому объять все не получится.
- Начните с изучения синтаксиса и решения простых задач. Чем больше практики, тем лучше.
- Чтобы добиться прогресса, рекомендуем выделять на обучение минимум 4 часа в неделю. Например, два раза заниматься по два часа. Больше тоже можно.
- Посмотрите вакансии на сайтах, где ищут программистов. Как правило, в них указывают, что необходимо знать и уметь для получения работы. Составьте список того, что вам потребуется для успешного прохождения собеседований.
- Не расстраивайтесь, если что-то на старте не получается. Это нормально. Начинать любое дело тяжело, но потом вы втянетесь, и все пойдет быстрее.
Старайтесь писать простой и понятный код. Посмотрите, что такое ООП и как его использовать.
Как устроиться на первую работу?
- Если у вас нет опыта, попробуйте попасть на стажировку в любую компанию, которая вас возьмет. Посмотрите в интернете, какие студии набирают стажеров, и отправьте им информацию о себе.
- Посмотрите на HH.ru вакансии для новичков. Есть компании, готовые брать людей без опыта на небольшую зарплату. Это нормально. На старте не стоит гнаться за деньгами. Важнее получить опыт, поскольку с ним зарплата начинает быстро расти.
- Участвуйте в конкурсах и чемпионатах, например, в Яндексе. Победителей часто берут на работу.
- Если вас пригласили на собеседование, но вы его не прошли, обязательно спросите, каких навыков вам не хватает. Подтяните знания и попробуйте прийти снова. Иногда соискателей берут со второй и третьей попытки – это обычная практика.
- Разместите информацию о себе на сайтах, где ищут программистов, и в каталоге разработчиков. Это поможет в поиске работы.
- Подпишитесь на группы, где публикуются вакансии. Много предложений сейчас можно найти в социальных сетях.
Практикуйтесь. Работодателям важны ваши реальные знания и навыки, и именно их будут проверять на собеседованиях.
План-карта по быстрому обучению Python c нуля до профессионала
Выучить Python можно быстро. Насколько быстро — зависит от того, чего конкретно вы хотите достичь с его помощью и сколько времени можете выделить на регулярное изучение и практику. Профессионал с десятилетним стажем, который обучает языку последние пять лет, составил roadmap из восьми последовательных этапов обучения для всех начинающих программистов.

Эта статья — пересказ оригинальной статьи с нашими дополнениями.
Сначала хочу сделать некоторые предположения о вас и причинах, которые побудили прочитать эту статью. Вот на что мы рассчитываем на старте:
- У вас практически нет опыта изучения Python.
- У вас нет опыта программирования на Python или вообще.
- Вы хотите знать, сколько времени займет изучение Python.
- Вас интересуют ресурсы и стратегии изучения Python.
Этот материал написан для начинающих. В нем есть советы и стратегии, чтобы любой мог изучать Python самостоятельно и максимально эффективно.
Насколько быстро можно выучить Python
Если вас интересуют базовые основы программирования на Python, то обучение может занять не более трех-четырех недель при регулярной практике. Если же вы заинтересованы в освоении Python для выполнения сложных задач или реальных проектов для смены профессии, то это займет уже гораздо больше времени.
У кого-то на это уходит пару месяцев, но обычно гуманитарий овладевает языком программирования (при должном старании) примерно в течение года. В этой статье приведены советы и лучшие ресурсы, которые помогут получить знания по программированию на Python в максимально короткие сроки.
Если вы задаетесь вопросом, сколько будет стоить изучение Python, то ответ будет: «зависит от ситуации». В интернете есть большой выбор бесплатных ресурсов, не говоря уже о различных книгах, курсах и платформах, которые опубликованы в электронном виде специально для начинающих. Но в целом, можно сказать, изучение языка программирования — это довольно бюджетное увлечение.
Изучайте «Питон» играючи
Другой вопрос, который может возникнуть: насколько сложно выучить Python? Это тоже зависит от ситуации. Если на старте у вас есть опыт программирования на другом языке, например, R, Java или C++, то вам, скорее всего, будет легче быстро выучить Python, чем тому, кто раньше не программировал вообще.
Изучение такого языка программирования, как Python, похоже на изучение естественного языка. Сначала вы запоминаете базовую лексику и изучаете правила синтаксиса . Со временем добавляете в свой репертуар новые слова и пробуете новые способы их использования. С изучением Python все то же самое.
Сейчас вы уже думаете: «Здорово! Можно выучить Python быстро, дешево и легко. Просто скажите, что читать, и направьте меня по нужному пути». Не так быстро! Есть еще четвертая вещь, которую нужно учесть, и это то, как именно учить Python.
Исследования в области обучения показали, что не все люди учатся одинаково. Одни лучше всего учатся, когда читают что-то самостоятельно, другие — когда видят и слышат (иногда — лучше в группе из единомышленников). Некоторым нравится учиться в игре, а не на курсах или лекциях. Изучая приведенный ниже список ресурсов, учитывайте свои предпочтения в обучении.
А теперь приступим к работе. Ниже приведены восемь базовых советов, которые помогут быстро выучить Python. Это общая пошаговая стратегия, которую можно дополнять
ИЗУЧИТЕ ОСНОВЫ PYTHON
Для начала надо изучить основы. Без их понимания вам будет трудно работать над сложными проблемами, проектами или сценариями использования. Примеры основ Python включают такие направления:
- Переменные и типы.
- Списки, словари и множества.
- Основные операторы.
- Форматирование строк.
- Основные операции со строками.
- Условия.
- Циклы.
- Функции.
- Понимание списков.
- Классы и объекты.
Все эти основы можно быстро изучить на различных сайтах: docs.python.org, RealPython.org, stavros.io, developers.google.com, pythonforbeginners.org.
Подробнее см. раздел «Веб-сайты» ниже.
ОПРЕДЕЛИТЕ ЦЕЛЬ ОБУЧЕНИЯ
Прежде чем начать изучать Python, определите цель своего обучения. Трудности, с которыми вы столкнетесь в начале, будет легче преодолеть, если вы будете четко помнить о цели. Кроме того, вы будете знать, на каком учебном материале сосредоточиться, а какой можно пропустить.
Например, если хотите изучить Python для анализа данных, то надо будет выполнять упражнения, писать функции и изучать библиотеки Python, которые облегчают анализ данных. Ниже приведены типичные примеры целей изучения Python, которые могут быть для вас актуальны:
- Анализ данных.
- Наука о данных и машинное обучение.
- Мобильные приложения.
- Разработка веб-сайтов.
- Автоматизация работы.
ВЫБЕРИТЕ РЕСУРС ДЛЯ БЫСТРОГО ИЗУЧЕНИЯ PYTHON
Ресурсы по изучению Python можно разделить на три основные категории:
- интерактивные ресурсы;
- неинтерактивные ресурсы;
- видеоресурсы.
Очные или удаленные платные курсы тоже один из вариантов, но мы их не будем рассматривать в этом посте (мы же обещали бюджетное и доступное всем обучение).
Интерактивные ресурсы широко распространились е в последние годы благодаря популяризации интерактивных онлайн-курсов, которые предоставляют практические задачи по кодингу и объяснения. А если вам кажется, что вы кодите, то это потому, что вы действительно кодите. Интерактивные ресурсы обычно доступны бесплатно или за символическую плату — или есть бесплатная пробная версия перед покупкой.
Неинтерактивные ресурсы — самые традиционные и проверенные временем, например, книги (цифровые и бумажные) и веб-сайты («онлайн-учебники»). Многие начинающие изучать Python предпочитают их из-за привычного и удобного вида. Есть множество таких неинтерактивных ресурсов, и большинство из них полностью бесплатны.
Видеоресурсы стали популярны в последние десять лет благодаря МООКам (массовым открытым онлайн-курсам) и напоминают университетские лекции, записанные на видео. Более того, они часто поддерживаются или продвигаются ведущими университетами.
Сейчас, например, на YouTube есть огромное количество видеоресурсов по различным предметам, включая программирование на Python. Некоторые из этих видеоресурсов представляют собой предварительно записанные курсы, а другие транслируются в прямом эфире. Например, компания General Assembly выпускает такой курс по Python, который охватывает основы языка за одну неделю.
Ниже собран список ресурсов, которые помогут быстро освоить Python. Они относятся к категориям, указанным выше, и охватывают как минимум основы Python. В списке отмечены звездочкой (*) бесплатные ресурсы.
И сразу замечание: привыкайте к английскому языку, это значительно поможет, когда вы перейдете к этапу поиска работы, ведь в процессе учебы вы прекрасно схватите всю терминологию на английском. Без английского языка зарабатывать на программировании довольно сложно, поэтому сразу начните учиться на английском. Это значительно улучшит ваши шансы на крутую работу.
Интерактивные ресурсы: инструменты и уроки
-
: одна из самых популярных интерактивных онлайн-платформ для быстрого изучения Python. Курс CodeAcademy по основам Python отлично подходит для абсолютного новичка, пройти его можно за неделю. Он поможет вам увлечься программированием на Python. : короткие видеоролики от экспертов с практическими упражнениями на клавиатуре. Не уступает курсам CodeAcademy.
- *PythonTutor.com: инструмент, который помогает шаг за шагом писать и визуализировать код. Его можно использовать в паре с другим учебным ресурсом. Этот инструмент значительно облегчает изучение основ Python, поскольку вы можете визуализировать, что делает ваш код.
- * stepik.org: обалденный адаптивный тренажер. Заходите на « Степик » и находите все курсы на тему Python, это очень эффективно тренирует ваши практические навыки. Соваться туда есть смысл только после освоения базовой теории, ИМХО для контроля своих знаний нет ничего лучше.
Неинтерактивные ресурсы
Неинтерактивные ресурсы делятся на две подкатегории: книги и веб-сайты.
Книги
Большинство книг предназначены для программистов, которые заинтересованы в глубоком изучении Python, или для мастеров Python, которые ищут надежные справочные материалы («поваренные книги») или специализированную литературу. Ниже я перечислил только те книги, которые РЕАЛЬНО полезны для начинающих.
- Введение в Python, 2-е издание: єта книга сочетает в себе учебники и рецепты кода в стиле поваренной книги для объяснения фундаментальных концепций Python.
- Learn Python 3 The Hard Way: 52 хорошо разработанных упражнения для начинающих изучать Python.
- Основы Python: A Practical Introduction to Python 3: на сайте книги все сказано — она предназначена для того, чтобы вы прошли путь от новичка до среднего уровня.
- Python Crash Course, 2nd Edition: эта книга дает основы общих концепций программирования, основ Python и решения проблем с помощью реальных проектов.
Сайты
Я решил включить только те, которые имеют явное преимущество в плане удобства или учебной программы. Все эти ресурсы бесплатны.
- *Google’s Python Class: Учебники, видео и упражнения по программированию на Python для начинающих от компании, дружественной к Python.
- *Hitchhiker’s Guide to Python: Это руководство поможет изучить и улучшить ваш код на Python, а также научит настраивать среду кодирования. Поиск по сайту невероятно эффективно помогает найти то, что нужно.
- *Python для всех: Онлайн-книга, содержащая инструкцию по изучению Python для тех, кто заинтересован в решении проблем анализа данных. Доступна в формате PDF на испанском, итальянском, португальском и китайском языках.
- *Python для тебя и меня: Онлайн-книга, которая охватывает темы для начинающих и продвинутых в концепциях Python, а также знакомит с популярным фреймворком Python для веб-приложений.
- *Python.org: Официальная документация по Python. На сайте также представлены руководство для начинающих, глоссарий Python, руководства по настройке и методички.
- *Programiz in Python: Programiz содержит подробный учебник по основам Python, который действительно хорошо сделан. Он настолько крут, что не должен быть бесплатным, но бесплатен.
- *RealPython.com: Большая коллекция специализированных учебников по Python, большинство из них сопровождаются видеодемонстрациями.
- *Sololearn: 92 главы, 275 тестов и несколько проектов по основам Python, доступ к которым можно получить через мобильное приложение.
- *Tutorialspoint.com: Простой учебник по основам Python.
- *W3Schools for Python: Еще один простой учебник от авторитетного ресурса для веб-разработчиков.
Видеоресурсы
Видеоресурсы становятся все более популярными, и на то есть веские причины: они удобны. Зачем читать учебник или учебное пособие, если можно комфортно изучить тот же материал в видеоформате на компьютере или мобильном устройстве? Видеокурсы делятся на две подкатегории: предварительно записанные и живые.
Предварительно записанные курсы
-
: Большой каталог популярных курсов по Python для всех уровней. Большинство курсов можно пройти бесплатно, а платные курсы сопровождаются сертификацией. Также можно просматривать курсы в мобильном приложении. : проводит университетские курсы, посвященные конкретным областям применения Python (наука о данных, разработка игр, искусственный интеллект), а также основам программирования. У EdX также есть мобильное приложение. : Каталог видеоматериалов, посвященных основам Python, а также специализированным темам, таким как машинное обучение на Python. : Коллекция предварительно записанных видео по основам Python для начинающих.
- *TreeHouse: Библиотека видеоматериалов по основам Python и промежуточным материалам. : восемь часов предварительно записанных видео по основам Python, а также некоторые промежуточные материалы.
- *Udacity: Предоставляет пятинедельный курс по основам Python. Также рассматриваются популярные модули стандартной библиотеки Python и другие сторонние библиотеки. : Библиотека популярных курсов по Python для учеников всех уровней. Сложно выделить какой-то конкретный курс. Рекомендую предварительно просмотреть несколько курсов по Python для начинающих, пока не найдете тот, который вам больше всего понравится. Также можете просматривать курсы в их мобильном приложении.
Живые курсы
General Assembly: Этот известный живой онлайн-курс от General Assembly избавляет от всех догадок или неточностей при изучении Python. В General Assembly у вас есть подготовленная и всеобъемлющая программа изучения Python, живой преподаватель, помощник, а также сеть коллег и выпускников, с которыми можно общаться во время и после курса.
РАССМОТРИТЕ ВОЗМОЖНОСТЬ ИЗУЧИТЬ БИБЛИОТЕКУ PYTHON
В дополнение к изучению языка Python полезно изучить одну или две библиотеки Python. Библиотеки — это наборы специализированных функций, которые служат «ускорителями» для стандартных задач разработки. Без них вам пришлось бы писать собственный код с нуля для выполнения специализированных задач. Например, Pandas — очень популярная библиотека для работы с табличными данными. Numpy помогает выполнять математические и логические операции над массивами.
Для описания популярных библиотек потребуется отдельный пост, а пока ознакомьтесь с этой страницей Python.org о стандартных библиотеках Python и этой страницей GitHub о дополнительных библиотеках Python.
УСКОРЬТЕ ПРОЦЕСС УСТАНОВКИ PYTHON С ПОМОЩЬЮ ANACONDA
Вы можете загрузить программу установки Python с сайта Python Software Foundation, а затем искать и загружать дополнительные библиотеки; или можно загрузить программу установки Anaconda, которая уже поставляется со многими пакетами, которые вы будете регулярно использовать, особенно если планируете использовать Python для анализа данных или науки о данных.
ВЫБЕРИТЕ И УСТАНОВИТЕ IDE
Вам необходимо установить интегрированную среду разработки (IDE), которая представляет собой приложение, позволяющее создавать сценарии, тестировать и выполнять код на Python.
Когда речь идет об IDE, правильной будет та, которой вам больше всего нравится пользоваться. Согласно различным источникам, наиболее популярными IDE/текстовыми редакторами Python являются PyCharm, Spyder, Jupyter Notebook, Visual Studio, Atom и Sublime. Сначала хорошие новости: почти все они бесплатны, так что попробуйте несколько, прежде чем остановиться на одном.
Далее «плохие» новости: каждая IDE/текстовый редактор имеет немного отличающийся пользовательский интерфейс и набор функций, поэтому потребуется некоторое время, чтобы научиться пользоваться каждой из них, чтобы наконец осознанно выбрать что-то свое.
Для новичков в Python я рекомендую кодировать в Jupyter Notebook. У него простой дизайн и упорядоченный набор возможностей, которые не будут отвлекать и облегчат практику и создание прототипов на Python. Он также поставляется со специальным дисплеем для отображения кадров данных и графиков. Если вы загрузите Anaconda, Jupyter Notebook будет предустановлен. Со временем я советую вам попробовать другие IDE, которые лучше подходят для разработки (Pycharm) или науки о данных (Rodeo) и позволяют интегрироваться (Sublime).
Кроме того, подумайте об установке обработчика ошибок или автокомплитера в дополнение к вашей IDE, особенно если вы работаете над длительными проектами. Он укажет на ошибки и поможет вам писать код быстрее. Хорошим вариантом является Kite, к тому же он бесплатный и интегрируется с большинством IDE.
ЕСЛИ СОМНЕВАЕТЕСЬ, ИСПОЛЬЗУЙТЕ GOOGLE ДЛЯ ПОИСКА И УСТРАНЕНИЯ НЕПОЛАДОК В КОДЕ
Когда вы, будучи новичком, работаете над упражнениями, примерами и проектами на Python, одним из самых простых способов устранения ошибок будет изучение опыта других разработчиков Python. Просто запустите быстрый поиск в интернете и укажите ключевые слова, касающиеся вашей ошибки.
Например, «how to combine two lists in Python» или «Python how to convert to datetime» — вполне приемлемые поисковые запросы, которые приведут вас на несколько популярных форумов, таких как StackOverFlow, Stack Exchange, Quora, Programiz и GeeksforGeeks.
СОСТАВЬТЕ ГРАФИК ИЗУЧЕНИЯ PYTHON И ПРИДЕРЖИВАЙТЕСЬ ЕГО
Это та часть, которую большинство людей пропускают, что приводит к неудачам или задержкам. Теперь все, что вам осталось, это составить расписание. Я рекомендую вам составить расписание минимум на две недели, чтобы распределить время между занятиями и обеспечить себе достаточно времени для адекватного изучения основ Python, практики кодирования в IDE и устранения неполадок в коде. Можно двигаться вперед такими двухнедельными спринтами, при этом очень важна систематичность занятий.
Часть сложности (и удовольствия) изучения Python или любого другого языка программирования заключается в устранении ошибок. После первых двух недель вы будете поражены тем, как далеко вы продвинулись, и у вас будет достаточно практики, чтобы продолжить изучение более продвинутого материала, предоставляемого выбранным вами ресурсом. По мере накопления опыта и систематичности занятий вы будете обретать все большую уверенность в том, что делаете. Пока это самообучение постепенно не станет самоподдерживающимся процессом, превратившись в еще одну (хочется верить, что полезную) привычку.
ЗАКЛЮЧИТЕЛЬНЫЕ МЫСЛИ
Мы определили минимальные сроки обучения, вы знаете, как выбрать цель обучения, у вас есть список учебных ресурсов и методов обучения, из которых реально можно выбирать, и вы знаете, какие еще соображения нужно будет учесть в процессе обучения.
Я надеюсь, что вы воспользуетесь этими советами, чтобы ускорить и упорядочить свое обучение Python!