С чего начать учить Python?

Как освоить синтаксис, настроить среду, практиковаться и начать зарабатывать

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

Где используется язык программирования Python?

По замыслу создателя языка Гвидо ван Россума, Python должен был повысить продуктивность разработчиков, пишущих на языках С и С++. Однако благодаря своей простоте язык быстро приобрел популярность в среде программистов и вышел за рамки своего первоначального назначения. Чаще всего язык применяется в веб-разработке, анализе больших данных и машинном обучении. Кроме того, на Python пишут сценарии для компьютерных игр (например World of Tanks и EVE Online).

В 2022 году в рейтинге TIOBE, который формируется на основе поисковых запросов, включающих упоминание языков, Python занимает первое место среди самых востребованных языков, обогнав Java и С.

У языка есть собственный свод правил, так называемый «дзен Python», который написал американский разработчик Тим Петерс. Одно из правил звучит так: «Должен существовать один — и желательно только один — очевидный способ сделать это». Это правило отлично описывает назначение языка: с его помощью можно один раз решить задачу, а потом просто автоматизировать ее.

Как изучать Python?

Синтаксис

Начните с изучения синтаксиса (правил, по которым пишутся команды) — в первую очередь прочтите официальную документацию. В сети есть много хороших самоучителей для новичков.

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

Подборка полезных видеоуроков на YouTube:

  • Python для начинающих — короткие видеоуроки, посвященные основам языка;
  • Видеоуроки Python — среди прочего тут есть, например, ролики, как редактировать видео на Python или работать с Википедией с помощью этого языка;
  • Clever Programmer — видеоуроки по программированию, советы и рекомендации, как прокачать свои навыки;
  • Telusko — более 100 роликов, посвященных Python: от начального до продвинутого уровня.

Python имеет несколько направлений, поэтому стеки и технологии, которые нужно знать новичку, зависят от специализации. Например, для начинающего веб-разработчика необходимо прежде всего знание фреймворков Django и Flask. Для дата-аналитики или дата-сайенс нужно уметь работать с библиотеками, предназначенными для обработки и анализа данных: NumPy, Pandas , Sklearn, TensorFlow. Для разработки десктоп-приложений в первую очередь важно знать библиотеку Tkinter и фреймворк PyQt5, для мобильной разработки — уметь работать в среде Kivy, для разработки игр — знать набор библиотек Pygame.

Настройка среды разработки

Изучив синтаксис, можно начать писать код. Для этого скачайте и установите среду разработки — IDE. Она объединяет несколько инструментов, предназначенных для разработки: редактор кода, инструменты для сборки, выполнения и отладки, а также систему контроля версий.

Самый базовый редактор — IDLE. Гвидо ван Россум назвал его в честь одного из актеров «Монти Пайтона» — Эрика Айдла. C помощью этой среды разработки можно просматривать, редактировать, запускать и отлаживать программы на Python. IDLE поставляется вместе с дистрибутивом. Скачайте и запустите редактор и в открывшемся окне можете начинать писать код.

Практика: сервисы и сайты

Решайте задачи. Их можно взять, например, на проекте Эйлера — это некоммерческий онлайн-проект, названный в честь знаменитого швейцарского математика Леонарда Эйлера. Проект (есть на русском и английском языке) объединяет сотни тысяч любителей математики и программирования — участники могут выбрать одну из задач и решить ее с помощью любого известного им языка программирования, в том числе с помощью Python. После того как участник получил правильный ответ, он может обсудить и сравнить с другими пользователями найденные им алгоритмы и способы решения.

Участвуйте в играх и квестах: например, chekio — это игра с заданиями разных уровней сложности и встроенной средой программирования или квест python challenge, в котором надо составить алгоритм, чтобы перейти к следующему шагу. Поискать задачки и упражнения также можно в соответствующем хабе на Хабре.

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

Что дальше?

Python-разработчик — востребованная профессия с высокими зарплатами. Свои первые заказы можно искать на онлайн-биржах, например fl.ru, weblancer.net, workzilla, или в Telegram-каналах с удаленной работой: Finder.vc, HomeWork и других.

Начинающий Python-разработчик  получает от 80 тыс. рублей, а лид может рассчитывать на зарплату около 400 тыс. рублей.

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

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

Курсы по теме

(рейтинг: 5, голосов: 3)
Добавить комментарий