простой способ выучить python

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

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

Как мне не удалось выучить Python … в первый раз

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

Поэтому я взял копию PDF-файла Learn Python the Hard Way, который тогда был бесплатно, и начал изучать его.

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

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

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

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

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

Как мне не удалось выучить Python … во второй раз

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

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

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

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

Наблюдая за чужим кодом в видео и слушая его объяснения, я думал, что учусь делать это для себя. И тесты с множественным выбором и заполнением пропусков, которые я получал на 100%, казалось, подтверждали, что я усвоил материал.

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

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

Я хотел научиться парсингу веб-страниц. Но вместо этого я изо всех сил пытался понять видеолекции о концепции объектно-ориентированного программирования (ООП). Какое это имеет отношение к моим целям? Я не был уверен, и поэтому бросил еще раз.

Почему я не смог

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

  1. Не имея четкой цели. Почему я изучал Python? Я действительно не знал. Это позволяет очень легко бросить, когда дела идут тяжело — а так будет всегда, рано или поздно.
  2. Слишком много проблем заранее. Рано или поздно мне пришлось бы выяснить, как установить Python в мою систему, но установка этого с нулевым соответствующим опытом, прежде чем я напишу столько, сколько печатает («Привет, мир!»), Была поводом для разочарования. и неудача.

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

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

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

  1. Я не учился на практике. Просмотр видео и прохождение тестов заставляли меня чувствовать, что я умею кодировать, но на самом деле я не занимался программированием. Когда я все же попытался (и потерпел неудачу) написать код, это было еще более разочаровывающим, потому что я думал, что уже понял это. И потому, что мне приходилось много раз щелкать по каждому видео, чтобы пересмотреть разные разделы и заново изучить вещи.
  2. У меня была четкая цель, но не было четкого пути к ней. Я знал, что хочу заниматься журналистикой данных и вебпарсингом, но я проходил общий начальный курс Python. Это означало, что я усвоил уроки, которые могли иметь решающее значение для разработки программного обеспечения, но не имели такого отношения к журналистике данных. Мне часто было трудно связать основы, которые я изучал в классе, с тем, что я действительно хотел делать с кодом.

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

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

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

Как вам скажет любой студент-первокурсник по обмену, достаточно просто спросить: «Сколько это стоит?» и «Где ванная?» на местном языке действительно может повлиять на качество вашей жизни.

Как я на самом деле изучил (немного) Python

К 2018 году я отказался от изучения Python. Я пробовал дважды и дважды потерпел неудачу! Но потом меня наняли в Dataquest, компанию, которая обучает навыкам работы с данными, включая программирование на Python, в Интернете.

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

Итак, с некоторым трепетом я создал учетную запись и начал наш курс по Python for Data Science.

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

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

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

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

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

Как упростить изучение Python

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

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

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

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

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

Сейчас существует множество онлайн-платформ, которые позволяют писать и запускать код в веб-браузере, или вы можете писать и запускать код в блокноте на Google Colab или аналогичной платформе. Просто постарайтесь максимально упростить для себя начало работы. Позже вы можете побеспокоиться о своей локальной настройке.

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

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

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

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