Программирование на Python и Objective-C в Mac OS

Программирование на Python и Objective-C под Mac OS и для iPhone / iPod Touch

Как выучить python: Как выучить Python с нуля: 15 бесплатных курсов и сайтов для самостоятельного изучения

Содержание

Легкий способ выучить Python | Techrocks

Хочешь знать больше о Python?

Подпишись на наш канал о Python в Telegram!

Подписаться

×

Перевод статьи «How to Learn Python The Easy Way (And Not the Way I Did)».

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

На как оказалось (и как я понял с третьей попытки), Python действительно доступен даже для такого гуманитария, как я. Просто нужно подойти к нему правильно.

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

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

Поэтому я скачал «Learn Python the Hard Way» в электронном виде (на тот момент это было бесплатно), и начал прорабатывать этот учебник.

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

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

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

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

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

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

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

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

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

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

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

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

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

Я хотел научиться веб-скрапингу. Но вместо этого я пытался понять концепцию объектно-ориентированного программирования. Как это связано с моими целями? Мне это было непонятно. В общем, бросить учебу во второй раз тоже было легко.

Причины провалов

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

  1. У меня не былочеткой цели. Зачем я изучал Python? Я этого не знал. Когда вы не знаете, зачем что-то делаете, очень легко бросить это делать при малейших трудностях. А рано или поздно трудности непременно возникнут.
  2. На старте у меня было слишком много проблем. В конечном итоге я все равно выяснил бы, как установить Python в мою систему. Но с учетом отсутствия опыта, когда я еще и print(‘Hello world!’) не написал, сложный процесс установки был серьезным демотиватором.

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

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

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

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

Кроме того, я допустил еще одну большую ошибку психологического свойства. Процесс изучения Python я воспринимал в черно-белых тонах. У меня как бы было два положения тумблера: либо я «изучил Python» (весь Python!), либо нет.

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

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

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

То же касается и Python. Чтобы изменить свою жизнь, вам не нужно знать все (и даже все то, что относится к обязательным знаниям).

Но этот урок я усвоил случайно.

Как я собственно изучил Python (в некоторой степени, конечно)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

4 ошибки, которые мешают вам выучить Python / Skillbox Media

Это статья для всех, кто начинает или планирует изучать Python. Мы разберём четыре ошибки, которые часто встречаются в период обучения. Если сможете их своевременно исправить — сэкономите время и упростите вход в профессию.

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

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


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

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

Представьте, что вы хотите стать доктором и выбираете направление. Как вы поступите? Соберёте подробную информацию о специальности или воспользуетесь методом проб и ошибок: полгода поработаете в венерологии, затем перейдёте в хирургию, дальше — в глазное отделение, в терапию, и так, пока не определитесь с решением?

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

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


Александр бабаскин

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


Нулевой, как выучить Python — Русские Блоги

 

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

 

Во-первых, Python — это язык программирования, который очень подходит для начинающих. По сравнению со многими другими языками программирования Mainstream есть лучшая читаемость, поэтому начать относительно легко. Различные модули, которые поставляются с собственными модулями, богаты сторонние модули, устраняя работу многих «повторяющихся ботинок», которые могут писать вещи быстрее. Окружающая среда разработки конфигурации не очень сложна, Mac и Linux имеют встроенный Python, и многие школы также начали использовать Python для обучения курсов дизайна программы.

 

IEEE SpectrumНедавно выпустил рейтинг компьютерного языка 2018 года. Они собрали 9 источников 11 показателей, а после взвешенных 47 языков они рассчитали оценки каждого языка и ранжировали. Python — это первое место в 2017 году, второе место снижается, и номер другой, язык C упал на третье место в 2017 году, а 2017 год третий Java стал четвертым местом в 2018 году, а C ++ занял второе место.

 

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

1.Легко обучаема:PythonСуществуют относительно мало ключевых слов, простых структур и грамматика четкого определения, ущерб проще.

2.Легко читать:PythonОчередные определения кода.

3.Легко поддерживать:PythonУспех состоит в том, что его исходный код довольно прост в обслуживании.

4.Широкий ассортимент стандартных библиотек:PythonОдним из крупнейших преимуществ является богаты библиотеками, кроссплатформой, совместимыми в UNIX, Windows и Macintosh.

5.Интерактивный режим:Поддержка интерактивного режима, вы можете ввести код и получить сегмент тестового и отладки из терминала, чтобы выполнить код и получить результат.

6.Портативный:Основываясь на его особенности своего открытого исходного кода, Python был пересажен (то есть работает) на многие платформы.

7.Масштабируемость:Если вам нужен очень быстрый критический код, или вы хотите написать несколько алгоритмов, которые не хотят открытыми, вы можете использовать C или C ++ для завершения части программы, а затем вызовите из программы Python.

8.база данных:PythonПредоставьте все основные коммерческие интерфейсы базы данных.

9.GUIПрограммирование:PythonПоддержка GUI может создавать и портировать их на многие системные вызовы.

10.Может быть встроена:Вы можете встроить Python в программу C / C ++, позволяя пользователям вашей программы получить «сценарию».

 

Нельзя сказать, говорят, что реальность, сегодняшняя искусственная интеллект, несомненно, является самой горячей отраслью в этом году, благодаря быстрому росту талантов в искусственном интеллекте, таланты исследования базового слоя становятся крупнейшим требованием таланта, включая глубокое обучение, Машинное обучение, алгоритм, нейронная сеть, графический процессор, облачные вычисления и искусственный интеллектуальный чип сегментация“Нужно найти”。

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

Так кто же имеет право изучать искусственный интеллект?

Если вы принадлежите к следующему, вы можете изучить искусственный интеллект.

ученик/Xiaobai: Если у вас есть сильная самостоятельная власть, у меня есть самовидивация, я хочу изменить статус-кво, изучая, тогда мы позволим вам осветить высокую зарплату!

Предмет Essential: время доставки Python Развитие навыков, легко для достижения профессиональной трансформации.

Прилично, делают полные инженеры стековода: определено, чтобы делать всесторонние таланты, один человек получает передний и задний конец!

Разработка преобразования по эксплуатации сети: занимается традиционной работой и обслуживанием и техническим обслуживанием сети, хочу преобразовать, тогда вы правыPython。

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

Итак, питон легко учиться? Это на самом деле очень просто! Ниже я сказал, что следующий номинальный новичок должен систематически изучать развитие Python.

Во-первых: обязательно заинтересовать, естьЦель, такая как создание программного обеспечения для чата или что, когда вы начнете интерес, является единственной движущей силой, которая приводит к продолжению обучения, потому что дизайн программы является умственным трудоммудростьКристаллизация,Каждый тыПисатьпрограммаЭто все мое сердце. Или реальность, сколько вы хотите заработать? Дать вам раньшеPythonУровень зарплаты инженеров. Это все равно должен быть уровнем прошлого года, он должен быть выше сейчас!

Во-вторых: Должен быть учитель, чтобы объяснить себе, учиться, так что вы можете занять намного меньше отряда, а не в небольшой проблеме, он вдали на день, вы можете понять одно предложение, вы поймете, но я думаю, что это может Займет день, может быть, я до сих пор не понимаю.

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

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

Пятый: чтобы сделать лучший мастер Python, наше обучение не может просто остаться в изученной грамматической фазе. войтиНа стадии глубины вы почти восхищаетесь Python, тогда вы должны знать, что Python реализуется на языке C. Тем не менее, как «динамические характеристики» объекта Python с относительным нижним слоем, и даже язык C не имеет как автоматического управления памятью? В это время вы не можете остаться на поверхности. Храбрый открыть черный коробку Python, иди глубоко во внутреннюю часть языка, пойти в свою историю, прочитайте его исходный код, чтобы по-настоящему понять его дизайнерские идеи.

 

Шест: Почему мы изучаем Питона? Высокая зарплата? Знай, что вы хотите, знайте, что вы делаете, как это сделать, это очень важно.

Говорят так много, как вы узнаете об этом? Есть ли бесплатная информация?

Студенты, которые заинтересованы в Python Development, добро пожаловать в QQ Group: 705673780, учиться вместе, обсуждайте друг друга.

Сканируйте QR-код ниже, бесплатно получать информацию

Как выучить python с нуля до Junior, самый лучший способ | FK

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

Я уже 2 года учу и практикую программирование на пайтоне и могу с уверенностью сказать, что знаю этот язык. Python — гибкий, относительно лёгкий в освоении, а главное многофункциональный, то есть на нём можно реализовать практически что угодно (кроме программ, требующих высокую скорость, python — язык не сильно производительный), поэтому python идеально подходит на роль первого языка программирования для изучения.

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

0. Установка всех программ

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

1. Основы языка

Не зря изучение программирования начинают с вывода «Hello world» на экран. Начните с этого. Просто напишите print(«Hello world») и запустите, поменяйте текст, опять запустите. Вы должны понять, что с этого момента компьютер находится под вашим контролем, нужно только научиться управлять своей властью, по крайней мере, мысли об этом меня и мотивировали почти всё время изучения.

Для программиста главное — это уметь гуглить. И это никакая не шутка, а действительность. Гуглите всё, что вам не понятно, и всё, что не знаете, ищите решения задач, с которыми не знаете как справиться и будет вам счастье!

Двигайтесь дальше, выучите что такое:

  • Переменные и типы данных
  • Арифметические операции
  • Условные операторы
  • Основные встроенные функции
  • Циклы
  • True и False, break и continue
  • Вложенные циклы
  • Множества, списки и кортежи и чем они отличаются
  • Работа со строками, срезы
  • Работа со списками
  • Списочные выражения
  • Вложенные списки
  • Словари
  • Функции, возвращение значений
  • Области видимости переменных
  • Параметры функций
  • Лямбда-функции
  • Рекурсия

На каждую из этих тем потратьте минимум по 1.5 часа, а то и больше, практикуйтесь, придумывайте задачи и находите их решения с помощью средств, которые вы уже знаете, или находите задачи на эти темы в интернете. Не изучайте 2 темы в один день, ваш мозг должен сначала обработать полученную информацию, а уже потом он будет способен правильно воспринимать новую. Делайте перерывы, но минимум 1.5 часа (теория + практика) подряд в день у вас должно уходить на изучение (Не обязательно каждый день, можно делать небольшие перерывы, но если уж начали, то 1.5 часа отзанимайтесь, иначе потом будет сложно вспомнить на чём вы закончили и ваши знания будут отрывочными).

Когда вы будете разбираться во всех темах, указанных выше, вы сможете сказать, что знаете основы языка. То есть у вас есть хорошая база для дальнейшего его изучения. Теперь я предлагаю вам написать небольшой проект на 1-2 дня, что угодно, например программу для исследования числа n, которая будет находить квадрат n, корень n, n-ное число Фибоначчи, n факториал, делители числа n. После реализации проекта, посмотрите на его код и посмотрите на список изученных вами вещей, подумайте как ваш код можно улучшить, чтобы он стал короче и проще. Так вы научитесь применять почти все знания, которые у вас есть.

Далее пойдёт этап углубления. Вы должны выучить эти вещи:

  • Библиотеки random, time, datetime
  • Pillow
  • Numpy
  • Работа с файлами (У меня он этом есть статья)
  • Что такое ООП
  • ООП полиморфизм
  • ООП определение операторов
  • ООП наследование
  • Итераторы и коллекции
  • Переопределение функций, декораторы

Вы познакомитесь с библиотеками и ООП, дальнейшее обучение будет проще и интереснее (Про то, что проще не обещаю, но интереснее — это точно). Тоже практикуйтесь (хотя ООП нужно просто выучить, практиковать пока особо нечего), тоже минимум по 1.5 часа в день, максимум одну тему в день.

Далее пойдёт практика:

  • Базы данных
  • PyQt5 и Qt Designer
  • Pygame
  • Telegram боты
  • VK боты
  • Discord боты
  • Django или Flask (Начинать лучше с фласка, он проще)

На каждую тему лучше выделить побольше времени, от 3-х дней, а также на каждую тему (кроме может баз данных) сделать мини-проект, обязательно используя базы данных и ООП. Например на PyQt5 сделайте калькулятор, в котором можно посмотреть историю всех операций. В pygame сделайте игру, не обязательно свою, например напишите Flappy bird или змейку, сделайте ботов и наконец напишите свой сайт.

Теперь вы знаете python, вам нужна только практика и повторение.

Ну а если статья вам понравилась, поставьте лайк, всегда рад помочь!

Как быстро выучить Python? — 5q.media

Технологии

22 октября

Рассказываем, чем хорош Python и с чего лучше начать его изучение

Автор:

Анна Даниловская

Редактор:

Роман Лукьянчиков

Практически в каждой крупной IT-компании есть специалисты, которые работают на Python, либо используют его вместе с другими языками программирования. Разобраться в нём при желании может даже школьник, а по популярности Python уступает только Java Script. Новичкам его изучение поможет освоить азы программирования, а опытным специалистам пригодится для решения новых задач.

Почему Python?

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

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

Где еще используют Python?

У этого языка программирования три основные сферы применения:

  • Машинное обучение и обработка данных: с помощью Python можно создавать алгоритмы для анализа текстов, изображений, распознавания лиц и голоса, для создания рекомендаций и не только.
  • Веб-разработка: написание серверного кода на таких фреймворках, как Django и Flask. Их использовали для написания серверной части YouTube и Instagram.
  • Написание скриптов — программ для автоматизации простых задач вроде сортировки электронных писем или сохранения фотографий с сайта в одну папку. Например, Disney использует Python как скриптовый язык для анимации.

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

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

Как и при изучении иностранного языка, в первую очередь нужно выучить синтаксис, то есть слова-команды и их значения. Это операции с целыми и вещественными числами, типы данных, переменные, оператор ветвления, стандартный ввод/вывод, логические операции, операции сравнения, условия: if, else, elif; циклы while, for и другие.

Какой софт понадобится?

Для программирования на языке Python нужен текстовый редактор вне зависимости от операционной системы. Начинающим программистам подойдут редакторы IDLE или Python Shell. Для работы над большими проектами нужны профессиональные редакторы, типа Visual Studio Code, Atom, Sublime Text и PyCharm. У каждого из них есть преимущества и недостатки. Выбирая редактор, обращайте внимание на наличие таких функций, как сохранение и перезагрузка файлов, запуск и автоматическое форматирование кода, поддержка отладки и подсветка синтаксиса. 

На что еще обратить внимание?

Изучение и использование разных библиотек откроет новые возможности Python. Например, библиотека Pygame помогает при создании мультимедийных приложений и игр, NumPy используется для работы с искусственным интеллектом, Pandas позволяет работать с большими данными, а Django и Flask чаще всего применяют для разработки серверной части приложений.

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

Что посмотреть и почитать?

Онлайн-курсы:

Книги:

Должен ли я выучить Python после C++?

В настоящее время я изучаю C++ и хочу выучить другой язык.

Для работы я использую C# + ASP (на самом деле только начал его изучать), но мне нужно что-то «less Microsoft» и мощное.

Я слышал, что Python-это популярный и мощный язык, не такой сложный, как C++. Но многие люди упоминали, что им было трудно вернуться к C++/Java из Python, потому что они начали думать в нем, привыкли к отсутствию управления памятью и т. д.
Что вы посоветуете?

c++

python

Поделиться

Источник


chester89    

05 марта 2009 в 14:52

17 ответов


  • Должен ли я выучить Objective-C для профессиональной разработки Mac?

    Действительно ли я должен научиться Objective-C разрабатывать надежные приложения для Mac? Поскольку пользователи Mac, как правило, используют только те приложения, которые имеют хороший (родной) GUI, я не думаю, что Mono и GTK+ или любой Java GUI (Swing) будут соответствовать их потребностям….

  • Должен ли я выучить C, прежде чем выучить Javascript?

    Было бы лучше выучить C , прежде чем изучать любой тип WEB и настольного программирования? Я не умею программировать, я хочу выучить Javascript, и мои друзья предложили мне сначала выучить C.



30

На самом деле нет правильного или неправильного ответа. Но я думаю, что вы получите больше пользы от изучения Python. Учитывая сходство между C# и C++, вы научитесь думать по-другому, чем Python. Чем больше способов вы научитесь думать о проблеме, тем лучше она делает вас программистом, независимо от языка.

Поделиться


Pesto    

05 марта 2009 в 14:57



9

Преимущество перехода от более статичного языка к динамичному языку заключается в изменении парадигмы программирования-речь идет не столько о том, чтобы стать «lazy», сколько о реализации новых способов выполнения задач, которые сделают вас лучше на любом языке.

Поделиться


Andrew Coleson    

05 марта 2009 в 14:56



4

Ну, я выучил Python после C/C++, Java и C#. Python-отличный язык, и его простота и последовательность улучшили то, как я кодирую. Это также помогло мне более ясно мыслить об алгоритмах, лежащих в основе моего кода. Я мог бы рассказать о преимуществах, которые она мне принесла, вместо этого я кратко изложу причину, по которой я ее изучил ->

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

Так что иди туда и учись Python. Ваш код улучшится(TM).

P.S.

1.You’ll потеряет навыки C++ (или любого другого языка), если вы пренебрегаете их содержанием и обслуживанием. Это полностью зависит от вас.

2.Programmer (разумная) лень-это добродетель.

Поделиться


batbrat    

05 марта 2009 в 15:02



4

Многие утверждают, что вы выиграете от изучения Python до C++.

  • Синтаксические препятствия намного, намного ниже;
  • Отладка гораздо более дружелюбна
  • Есть множество библиотек-батарейки включены, вы знаете. Легко
    экспериментировать с соскабливанием паутины, XML и т. Д. В Python. Опять же, барьеры для входа
    в C++ намного выше.

Это все еще хорошо, чтобы узнать C/C++, из-за его тесной связи с машиной. Но новый программист может многому научиться, исследуя Python.

Поделиться


zweiterlinde    

05 марта 2009 в 15:03



2

Я не думаю, что «Python makes you lazy» (во всяком случае, хорошее название!).

Напротив, в программировании, как и в жизни, важно знать более одного языка; Я думаю, вы найдете python забавным и достаточно отличным от C++ или C#, чтобы языки не смешивались в вашей голове…

Поделиться


Paolo Tedesco    

05 марта 2009 в 14:56



2

Python дополняет C++ и легко интегрируется с C++. (В качестве доказательства этого утверждения гуру C++ из Boost используют Python.)

И, как вы сказали, Python дает вам возможность получить перспективу за пределами орбиты Microsoft. Но даже там, если вам нужно интегрировать Python с MS инструментами, есть IronPython.

Поделиться


John D. Cook    

05 марта 2009 в 15:05



1

Многие языки очень похожи на другие, но для перехода между империтавными и функциональными / динамическими и статическими / объектными и процедурными языками вам нужно научиться мыслить в рамках ограничений языка, который вы используете. Поскольку большинство проектов длятся, по крайней мере, несколько недель, это, как правило, не является проблемой после первых нескольких дней.

Вам будет труднее переключиться с языка+среды, которая вам нравится в вашем развитии после работы / хобби.

  • C, Макрос-ассемблер => в основном то же самое — разница в основном в библиотеках
  • C++, Java, C#, Delphi => в основном одна и та же парадигма — вы быстро учитесь использовать возможности конкретного языка и перенимать концепции от одного синтаксиса к другому. Это в основном тот же самый способ мышления, самое большое исключение-то, как вы думаете об изменении памяти.

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

Если вам интересно, прочтите это http://cmdematos.com/?p=120 о том, как сделать стратегический выбор языка.

Поделиться


cmdematos.com    

05 августа 2009 в 19:53


  • Должен ли я выучить Java или я должен выучить C++?

    У меня довольно хороший фон не-OOP. Я сделал много кодирования Visual Basic и немного SQL. Я хочу расширить свой набор навыков и стать более востребованным. Большая часть моего опыта была связана с научными компаниями, и я много поддерживал ученых. Я хочу взять несколько онлайн-классов в моем…

  • Исходя из C, как я должен выучить Python?

    Я хорошо разбираюсь в C, моем первом языке программирования. Я знаю разумное количество трюков и техник и написал довольно много программ, в основном для научных целей. Теперь я хотел бы разветвиться и понять OOP, а Python кажется хорошим направлением для движения. Я видел несколько вопросов о…



1

Я выучил C/C++, Java, Python & C# в таком порядке.

Те два, которые я на самом деле неизменно использую, — это C++ & Python; Я нахожу, что ниша Java & C#, занимаемая между ними, слишком узка, чтобы чувствовать необходимость использовать их много (по крайней мере, для того, что я делаю).

Я также думаю, что на самом деле я не знал «get» C++ функторов и boost::bind , пока не столкнулся с Python.

Поделиться


timday    

06 марта 2009 в 13:33



1

Изучение большего количества языков может только сделать вас лучшим разработчиком, независимо от их подхода. Кроме того, ваш опыт работы с C++ (или, по крайней мере, C) пригодится для написания высокопроизводительных частей ваших приложений с использованием Python C API, что позволяет коду «raw» C и C++ хорошо сочетаться с чистым материалом Python.

Я по-прежнему ежедневно пишу код в Objective-C (1.0… до управления памятью) и Python. Разнообразие на самом деле забавно, а не сбивает с толку; не дает вещам быть скучными.

Поделиться


Jarret Hardie    

05 марта 2009 в 14:58



1

Напрягите свой мозг и улучшите свои навыки. Дайте функциональному языку возможность развернуться.

Поделиться


Steven Evers    

05 марта 2009 в 14:59



1

Это зависит от того, какие именно приложения вы хотите программировать , например, для веб-сайтов , которым нужен доступ к базам данных, я бы выбрал Ruby( и Ruby на платформе Rails), для финансовых приложений или приложений, которым требуется много параллельной обработки, я бы выбрал функциональный язык программирования, такой как Haskell, oCaml или новый F#, эти последние 3 сделают вас лучшим программистом, даже если вы не программируете в них много, кстати, c# в последнее время в последних версиях добавляет все больше и больше функциональные возможности программирования. Я бы изучил Python для безопасности и эксплойтов различных приложений.

Поделиться


Unknown    

05 марта 2009 в 15:02



0

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

Поделиться


luc    

04 июня 2009 в 10:44



0

Это правда. После изучения python все остальное будет казаться слишком большим усилием для такого же объема реальной работы. Вы привыкнете к чистому, небольшому синтаксису и свободе GC. Вам понравится работать в списках, генераторах и т. Д. Вы начнете думать в python и C++, а Java будет похоже на строительство корабля в бутылке по одной веточке за раз.

Но поскольку это намного проще, разве это не соблазняет вас попробовать это еще больше?

Поделиться


Tim Ottinger    

06 марта 2009 в 00:10



0

Вы можете выучить новый язык программирования, например python, и использовать его для выполнения всех задач, которые вы обычно выполняете на своих ‘core’ языках; или вы можете взять язык (например, python или perl) и использовать его в дополнение к вашему основному языку.

Вы можете выучить VBScript и использовать его для написания сценариев, которые склеивают ваш код и другие вместе. Если вам нужно что — то менее Microsoft, то сценарии python, perl или bash были бы хорошей идеей-не только для того, чтобы научиться кодировать по-новому, но и для того, чтобы делать вещи иначе, чем обычный способ «кодировать приложение».

Поделиться


gbjbaanb    

05 марта 2009 в 15:04




0

С точки зрения утилиты полезно также изучить один из более динамичных языков, таких как Python (или Ruby или Perl). Они не только растягивают ваш ум, но и превосходят вас в выполнении определенных задач. Например, если вы хотите манипулировать текстом, C++ намного сложнее использовать, чем Python. Это дает вам еще одну стрелу в вашем колчане, чтобы использовать ее при необходимости.

Поделиться


Steve Rowe    

05 марта 2009 в 15:19



0

Я учился, чтобы:

  • BASIC
  • Pascal
  • Ада
  • (Немного Haskell)
  • Java
  • Python
  • C++
  • C#

Я не чувствую, что Python препятствует моей способности учиться или использовать C++. Однако я рад, что изучил указатели в Pascal, прежде чем столкнуться с ссылочными типами в Java, Python и C#,, потому что я чувствую, что это дало мне хорошую основу для понимания идеи различий между «value types» и «reference types». Я думаю, что для меня наиболее важными из этих языков являются Python, Haskell и C++. Все они дополняют друг друга, и хотя иногда я работаю в одном и жалею, что у меня нет функции от другого, в целом я думаю, что мне очень полезно более глубокое понимание таких вещей, как системы типов, объектная ориентация и метапрограммирование, видя различные способы, которыми эти языки подходят к этим вещам.

Поделиться


Weeble    

05 марта 2009 в 15:25



0

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

Поделиться


Bartosz Radaczyński    

05 марта 2009 в 15:27


Похожие вопросы:

Как я должен выучить C?

Мне интересно узнать C. Я читал K & R , и я даже сделал некоторые простые C расширения работы в R и Python. Какая стоящая идея проекта для того, чтобы сделать что-то более существенное с C? Есть…

Должен Ли Я Выучить NHaml?

Должен ли я выучить NHaml ? Что это дает мне по сравнению с классическим видом ASP.NET MVC? Каковы плюсы и минусы? Используете ли вы его через проект MVC Contrib ? Я вижу все больше и больше об…

Какой язык я должен выучить в качестве моста к C (и производным от него)

Первым языком, который я выучил, был PHP, но совсем недавно я выучил Python. Поскольку все это ‘high-level’ языков, я нашел их немного трудными для восприятия. Я тоже пытался выучить Objective-C, но…

Должен ли я выучить Objective-C для профессиональной разработки Mac?

Действительно ли я должен научиться Objective-C разрабатывать надежные приложения для Mac? Поскольку пользователи Mac, как правило, используют только те приложения, которые имеют хороший (родной)…

Должен ли я выучить C, прежде чем выучить Javascript?

Было бы лучше выучить C , прежде чем изучать любой тип WEB и настольного программирования? Я не умею программировать, я хочу выучить Javascript, и мои друзья предложили мне сначала выучить C.

Должен ли я выучить Java или я должен выучить C++?

У меня довольно хороший фон не-OOP. Я сделал много кодирования Visual Basic и немного SQL. Я хочу расширить свой набор навыков и стать более востребованным. Большая часть моего опыта была связана с…

Исходя из C, как я должен выучить Python?

Я хорошо разбираюсь в C, моем первом языке программирования. Я знаю разумное количество трюков и техник и написал довольно много программ, в основном для научных целей. Теперь я хотел бы…

Должен ли я выучить Java, прежде чем выучить Android

Должен ли я выучить Java до того, как выучу Android, или я могу делать обе вещи параллельно? Каков наилучший подход?

Должен ли я выучить C++ или ASM?

Я в замешательстве, должен ли я выучить C++ или ASM? Я просто любитель, так что ничего страшного, но мне нужен совет. спасибо

Должен ли я выучить wxPython код или XRC код?

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

C чего начать учить Python

Python известен своим приятным синтаксисом и простотой. Говорят, выучить его может каждый. Но с чего начать и как выстроить обучение, чтобы не забросить его на половине пути? Web Academy расспросила об этом программистов, которые не первый год работают с Python. Они рассказали и о своих первых шагах и о том, как понять, что уровень новичка пройден и можно смело подавать резюме в компанию мечты.

Антон Мазун, Python developer в GeeksForLess Inc (тренер Web Academy)

Кто может изучать Python

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

Понятие «Python как язык программирования» стоит рассматривать с точки зрения области его применения, а не самого языка. Язык программирования — это просто инструмент. Если вы хотите работать в data science, то конечно же, вам понадобится ещё очень мощный математический аппарат. А если же работать как back-end developer, то может хватить и школьной программы.

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

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

Поэтому всем рекомендую выбрать для себя понравившуюся область и просто начать понемногу писать проект. В этом деле главное практика. Спустя какое-то время я вернулся к прочтению книг. Автор — Марк Лутц. Всем рекомендую.

Ближайший курс по направлению: Python с нуля

С чего начинать учить Python сегодня

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

Вот несколько полезных ссылок от меня:

Python лучше учить на курсах или самостоятельно

Чтобы не путаться в тонне информации из интернета, я рекомендую пойти на курсы. Во всяком случае, там с вами будет тренер, у которого всегда можно что-то спросить. Но нужно понимать одну простую вещь: просто прослушав 100 часов лекций, работу мечты вы не получите. Курс нужен для того, чтобы структурировать ваш процесс обучения и получить ответы на вопросы от более опытных людей в этой сфере. Курсы — это только 20%, остальные 80% — это правильная обработка первых 20%.

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

Как понять, что от изучения Python уже можно переходить к работе

Если вы уже не боитесь таких слов как декоратор, генератор, ООП, сможете рассказать, что такое полиморфизм, инкапсуляция, знаете правильный ответ True+True и понимаете, почему так происходит — можно и работать. Но это те знания, которые нужны для работы с инструментом Python. А дальше все зависит от сферы, в которую пойдете.

Как не быть в Python вечным новичком

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

Максим Орлюк, Software engineer в Reface (тренер Web Academy)

Кто может изучать Python

Кто угодно, кому интересен Python, может его учить. Я в принципе рекомендую начинать двигаться в направлении изучения программирования только в том случае, если это интересно. Потому что эта сфера специфична. И если нет «живого» интереса, вряд ли что-то получится.

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

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

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

Также взял курс, но там были только лекции, а мне хотелось получать и домашние задания. Позже еще проходил курс от CyberBionic Systematics «Python Advanced».  На нем разбирали уже более сложные темы, но навыков я получил много.

С чего начинать учить Python сегодня

Сейчас сфера онлайн-образования очень развита: есть курсы с преподавателем и без, есть много статей на том же «Хабрахабр» или Medium. Что касается онлайн-платформ, рекомендую Coursera или Udemy. Можно выбрать любую и начинать.

Python лучше учить на курсах или самостоятельно

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

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

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

Как понять, что от изучения Python уже можно переходить к работе

Важно понимать, что для работы нужен не только Python. Я не видел ни единой вакансии или работы, где было бы достаточно знать только лишь этот язык программирования. Обычно в требованиях хотя бы один или два фреймворка: Django, асинхронный фреймворк вроде aiohttp и пр. Также необходимо уметь работать с Git – это система контроля версий. А еще — иметь базовые понятия о том, как работает проект. Последнее необязательно, но крайне желательно.

Круто, если с первым резюме вы покажете свои pet-проекты. Это проект, который вы делаете для себя или, чтобы освоить что-то новое. Например, может быть pet-проект с использованием того или иного фреймворка, который даст понимание, как его использовать в боевых условиях, а не знать об этом только в теории. Это может быть телеграмм-бот, который будет присылать вам прогноз погоды. Или сервис, который будет присылать раз в день какую-то песню. Pet-проекты, по большому счету, могут не иметь какой-то пользы с точки зрения юазбилити. Но они показывают, что вы умеете работать с теми или иными инструментами.

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

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

Работа в компании дает много преимуществ, помимо самого факта работы: опыт работы в команде, Code Review (старшие коллеги будут смотреть код), вы узнаете, что и как реализовано в проекте. Все это полезно на любом этапе карьеры, но на старте — особенно. Ведь с таким опытом со временем вы сможете решать проблемы, которые видели в компании, самостоятельно.

Как не быть в Python вечным новичком

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

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

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

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

Николай Осиный, Python Software Engineer в PrivatBank

Кто может изучать Python

Python доступен кому угодно. Здесь трудно не вспомнить Эйнштейна, который говорил: «Дело не в том, что я такой умный. Я просто трачу на решение задач больше времени». Сфера программирования ничем не отличается от других сфер: кто-то талантлив от природы и ему это легче дается, кому-то нужно будет приложить невероятные усилия. Но возможность есть у всех, тем более сейчас.

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

Я начинал с изучения Java Core. И случайно, после обучения, на работе увидел книгу по Python. Меня удивило, что, оказывается, Hello World можно напечатать в консоль одной строкой, не объявляя классы и прочее. Так что меня зацепил «синтаксический сахар», а дальше по шаблону: узнал, что язык разносторонний для развития, что США диктует моду на него и т.д. Первым шагом к изучению стала онлайн-платформа на Stepic.org.

С чего начинать учить Python сегодня

Онлайн-платформы вроде Stepic.org, Udemy. Читать классическую литературу тоже не помешает. Рекомендую книги Марка Лутца.

Python лучше учить на курсах или самостоятельно

Лучше учить новый язык программирования самостоятельно и под кураторством ментора. Самостоятельно можно действительно разобраться и запомнить вопрос на всю жизнь. Ментор необходим для преодоления тупиковых ситуаций. Но сфера IT очень романтизирована сейчас, и рисуется чуть ли не как рай на Земле. Многие, попадая на реальную работу разочаровываются, что все не так, как было в рекламном буклете. Поэтому с курсами нужно быть осторожным — можно просто выкинуть деньги на ветер.

Как понять, что от изучения Python уже можно переходить к работе

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

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

Как не быть в Python вечным новичком

Рецепта нет. Выберите сферу, которая нравится (web/bigdata/ml) и постоянно работайте, изучайте новинки. Работая, трудно остаться новичком. Либо будет прогресс, либо сфера «выплюнет» человека на берег. Не без исключений, конечно.

Владислав Романюк, Python Software Engineer в PandaDoc

Кто может изучать Python

Каждый может, главное — усидчивость. Плюс Python в том, что ты не должен завязываться на определенную нишу, можно пойти в back-end, в Artificial Intelligence, Machine Learning и другие отрасли.

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

Сам я знакомился с Python с книги Марка Лутца, но это очень плохой опыт. Книга была скучная и большая.

С чего начинать учить Python сегодня

Идеально начинать учить Python по книге Automate the Boring Stuff with Python, 2nd Edition: Practical Programming for Total Beginners. Она нескучная и есть практические задания. Также рекомендую классный курс от Дэвида Бизли.

Python лучше учить на курсах или самостоятельно

Сложно сказать, как лучше учить Python. Здесь все зависит от человека. Если он может сам заниматься и ему не нужен контроль, то вполне можно обойтись и без курсов.

Как понять, что от изучения Python уже можно переходить к работе

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

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

Как не быть в Python вечным новичком

Я слежу на Pycon’ами, читаю книги и статьи, но самое главное — не уходить с головой в Python. Можно посмотреть в сторону других языков, учить фреймворки, базы данных, очереди сообщений и т.д. Чаще всего только лишь знаний Python не будет достаточно для того, чтобы получить работу. Нужно однозначно уметь работать с Git, базами данных и знать какой-то фреймворк: flask, fast api, aiohttp, django. 

Как выучить Python простым способом (а не так, как я)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Почему я потерпел неудачу

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

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

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

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

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

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

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

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

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

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

То же верно и для Python.Вам не нужно знать все, — или даже все это обязательно — чтобы реально изменить свою жизнь.

Но это урок, который я усвоил случайно.

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

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

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

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

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

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

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

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

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

Как облегчить изучение Python

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

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

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

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

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

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

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

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

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

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

Как выучить Python — DataCamp

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

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

Знайте свою мотивацию, прежде чем начать

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

1. Наука о данных и машинное обучение

Рост популярности

Python можно объяснить его богатым набором пакетов и инструментов для анализа данных и машинного обучения.Исследователи используют пакеты анализа данных, такие как pandas, для анализа данных Covid, практики могут быстро применять машинное обучение с такими библиотеками, как scikit-learn, Keras и PyTorch, для обнаружения мошенничества, классификации изображений и выработки рекомендаций по продуктам.

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

Независимо от того, создаете ли вы простые программные приложения, такие как калькуляторы, или более сложные, например редакторы документов и социальные сети. Python предлагает множество инструментов для прототипирования, разработки и запуска настольных или мобильных приложений, таких как wxWidgets и Kivy.

3. Веб-разработка

Знаете ли вы, что веб-приложения, такие как Uber, Netflix и Spotify, были созданы с использованием Python? На Python существует множество веб-фреймворков, которые упрощают разработку веб-сайтов. Такие пакеты, как Flask, Django, Bottle и Pyramid, предлагают инструменты для быстрого прототипирования и создания масштабируемых веб-приложений.

4. Разработка игр

Это может стать сюрпризом, но такие игры, как The Sims 4 и Civilization IV, были созданы с использованием Python. Библиотеки Python, такие как PyGame и Turtle, упрощают создание прототипов и разработку игр.

5. Интернет вещей (IoT)

Рост встраиваемых систем и Интернета вещей (IoT) стимулировал инновации и улучшение бизнес-процессов во всех областях. Python предлагает набор пакетов, которые упрощают проектирование, создание и развертывание устройства IoT на Arduino, Raspberry Pi и других устройствах IoT, таких как Alexa и Google Home.

6 шагов на пути к изучению Python

1. Уделите как можно меньше времени базовому синтаксису

При изучении любого языка программирования очень легко увязнуть в изучении синтаксиса.Вводные курсы часто превращают обучение в рутинную работу, сосредотачиваясь на синтаксисе чистого Python, а не на том, как Python может решить конкретную проблему. Не поймите меня неправильно: изучение синтаксиса Python необходимо любому новичку, изучающему Python, но, как правило, вы должны выучить ровно столько синтаксиса, чтобы приступить к работе над простыми проектами. Когда я начал свой путь Python в науку о данных, я выучил синтаксиса ровно столько, чтобы иметь возможность использовать pandas для простых задач анализа данных. Вот список ресурсов синтаксиса:

2.Настройте среду Python

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

Чтобы получить практическое руководство по настройке среды Python с помощью Anaconda, посмотрите мои практические занятия, в которых вы найдете пошаговое руководство.Вы также можете следовать руководствам для начинающих по установке Anaconda в Windows и Mac OS X.

Образ интегрированной среды разработки Spyder

3. Учитесь на практике

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

Наука о данных и машинное обучение

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

  • DataCamp предлагает более 130 интерактивных курсов Python и 39 проектов по широкому спектру тем в области науки о данных и машинного обучения. Вы будете развивать свои навыки с нуля, программируя прямо в браузере, и применять свои навыки в различных наборах данных из финансов, маркетинга, спорта, истории и т. Д.
  • The Python Data Science Handbook предоставляет отличный обзор основных пакетов и методов обработки данных в Python.Удобно, что весь контент доступен на GitHub в виде записных книжек Jupyter.
  • Специализация IBM Data Science Professional Certificate на Coursera включает девять курсов, охватывающих ряд методов анализа данных, визуализации данных, машинного обучения и т. Д. Последний курс по специализации — это проект, объединяющий эти методы на данных Foursquare.
  • Программа Codeacademy Data Scientist Path предлагает ряд курсов по науке о данных и машинному обучению с использованием Python, которые завершатся финальным портфельным проектом.
Разработка программного обеспечения для настольных и мобильных устройств

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

  • Учебник ZetCode wxWidgets предлагает пошаговое введение в создание графических пользовательских интерфейсов с помощью wxWidgets и показывает учащимся, как создать простую игру Тетрис.
  • Kivy предлагает ряд руководств по созданию простых мобильных приложений с помощью Kivy на Python.
Веб-разработка

Два основных пакета для веб-разработки Python — это Flask и Django. Пока обсуждаются плюсы и минусы каждого, вот список учебных ресурсов для обоих пакетов:

  • На странице руководства Flask объясняется, как создать простой веб-сайт для блога. Если вы визуально обучаетесь, это видео на YouTube станет отличным введением в создание веб-сайтов с помощью Flask.
  • Научитесь создавать веб-приложения на странице руководства Django.Real Python также прекрасно объясняет это и включает список примеров проектов для портфолио веб-разработчиков.
Разработка игр

В то время как в современной разработке игр преобладают игровые движки, такие как Unreal Engine и Unity, где большинство разработчиков используют JavaScript, C #, C ++ или Java, следующие пакеты python — отличный способ начать разработку игр:

  • На странице руководства PyGame показано, как создавать различные игры с помощью PyGame. Визуальные ученики могут следить за этим видео на YouTube, чтобы создать игру с космическими захватчиками с помощью Python.
  • Real Python предлагает отличный обзор пакета Turtle для разработки игр на Python, заканчиваясь игрой о гонках черепах в качестве финального проекта.
Интернет вещей (IoT)

устройств IoT повсюду вокруг нас, собирают данные о нашей среде, и ожидается, что их число будет только расти. Вот список ресурсов, посвященных программированию устройств Интернета вещей с помощью Python:

4. Узнайте, как отлаживать код, и обратитесь за помощью

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

  • Google — это почти всегда первое место, куда я обращаюсь, когда сталкиваюсь с ошибками в моем коде. Почти всегда ответ на мой запрос Python будет в первых 10 результатах поиска.
  • Stack Overflow — это крупнейшее сообщество разработчиков, в котором специалисты-практики могут обращаться за помощью в отладке кода, задавая вопросы по программированию и отвечая на них.В большинстве случаев ваш вопрос о Python уже был задан и получен ответ. Если вы хотите задать вопрос самостоятельно, обязательно следуйте их лучшим практикам при формулировке вопросов.
  • Документация всегда будет вашим другом. Независимо от того, работаете ли вы со встроенными функциями Python или с загруженным пакетом, например pandas, вы всегда можете найти документацию с подробным описанием функций, возможных ошибок и руководств на веб-сайте пакета, с которым вы работаете.

5.Расширьте свои учебные ресурсы

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

  • Блоги помогут вам быть в курсе последних тенденций и технологий Python. Один из моих любимых — Real Python, так как в нем есть учебники и учебники по пакетам, которые я бы иначе не использовал. У них также есть небольшой информационный бюллетень с советами и приемами Python.
  • Чтение чужого кода чрезвычайно полезно для оттачивания навыков Python. Для науки о данных и машинного обучения Kaggle — отличный ресурс, чтобы узнать, как опытные специалисты по данным решат проблему. Вы также можете посмотреть исходный код ваших любимых пакетов с открытым исходным кодом на GitHub.
  • Посещайте конференции, встречи и другие собрания сообщества с более опытными практикующими. Это даст вам возможность пообщаться и поучиться у более опытных программистов Python.

6. Создайте портфель проектов

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

Вы можете начать создавать свое портфолио, разместив свой код на Github и написав сообщения в блогах о своих проектах.Это дает вам возможность продемонстрировать свои технические навыки письма и научить новичков, как вы разрабатываете свои проекты. Вы можете писать сообщения в блоге, разрабатывая собственный веб-сайт или используя службу хостинга блогов, такую ​​как Medium.

Я надеюсь, что этот пост в блоге вдохновил вас и что эти ресурсы будут вам полезны. Освоение любого языка программирования — это путь обучения на протяжении всей жизни, и я все еще нахожусь в этом пути. В DataCamp Python является частью нашей основной учебной программы, и мы постоянно улучшаем и добавляем наш контент.Наконец, я приглашаю вас присоединиться к тысячам учеников в сообществе DataCamp Slack, чтобы получить поддержку в вашем путешествии по Python!

Адель Нехме — евангелист по науке о данных в DataCamp. Ранее он был разработчиком контента, где он сотрудничал с инструкторами по ряду курсов Python и создал наш курс Очистка данных в Python.

8 советов по быстрому изучению Python

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

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

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

Еще один вопрос, который может у вас возникнуть: «насколько сложно будет изучить Python?» Это тоже зависит.Если у вас есть опыт программирования на другом языке, таком как R, Java или C ++, вероятно, будет легче выучить Python быстро, чем тому, кто раньше не программировал. Но изучение языка программирования, такого как Python, похоже на изучение естественного языка, и все делали это раньше. Вы начнете с запоминания базовой лексики и изучения правил языка. Со временем вы пополните свой репертуар новыми словами и опробуете новые способы их использования. Изучение Python ничем не отличается.

Сейчас вы думаете: «Хорошо, это здорово.Я могу выучить Python быстро, , дешево и легко. Просто скажи мне, что читать, и укажи мне дорогу ». Не так быстро. Есть четвертая вещь, о которой вам нужно подумать, и это , как изучать Python. Исследования в области обучения показали, что не все люди учатся одинаково. Одни лучше всего учатся, читая, другие — видя и слыша. Некоторым людям нравится учиться в играх, а не на курсах или лекциях. Просматривая тщательно подобранный список ресурсов ниже, учитывайте свои собственные предпочтения в обучении при оценке вариантов.

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

1. Изучите следующие основы Python.

Как минимум вы (и ваш ресурс) должны знать основы. Без их понимания вам будет нелегко работать над сложными проблемами, проектами или вариантами использования. Примеры основ Python:

  • Переменные и типы
  • Списки, словари и наборы
  • Базовые операторы
  • Форматирование строк
  • Основные операции со строками
  • Условия
  • Циклы
  • Функции
  • Составление списков
  • Классы и объекты

Если вы ‘ Времени очень мало, все эти основы можно быстро изучить на различных веб-сайтах: docs.python.org, RealPython.org, stavros.io, developers.google.com, pythonforbeginners.org. См. Более подробную информацию в разделе «Веб-сайты» ниже.

2. Установите цель своего исследования.

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

  • Анализ данных
  • Наука о данных и машинное обучение
  • Мобильные приложения
  • Разработка веб-сайтов
  • Автоматизация работы

3. Выберите ресурс (или ресурсы) для быстрого изучения Python.

Ресурсы

Python можно разделить на три основные категории: интерактивные ресурсы, неинтерактивные ресурсы и видеоресурсы. Личные курсы также возможны, но мы не будем их рассматривать в этом посте.

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

Неинтерактивные ресурсы — ваши самые традиционные и проверенные временем; это книги (электронные и в мягкой обложке) и веб-сайты («онлайн-учебники»). Многие изучающие Python впервые предпочитают их из-за знакомой и удобной природы этих сред. Как вы увидите, существует , множество неинтерактивных ресурсов, из которых вы можете выбирать, и большинство из них бесплатны.

Видеоресурсы были популяризированы за последние 10 лет с помощью МООК (массовые открытые онлайн-курсы) и напоминали университетские лекции, снятые на видео.Фактически, их часто поддерживали или продвигали ведущие университеты. Сейчас существует множество видеоресурсов по разным предметам, включая программирование на Python. Некоторые из этих видеоресурсов представляют собой предварительно записанные курсы, размещенные на учебных платформах, а другие — это курсы в режиме реального времени, предоставляемые поставщиками онлайн-образования. General Assembly выпускает живой курс по Python, который охватывает основы Python за одну неделю.

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

Интерактивные ресурсы: инструменты и уроки

  • CodeAcademy: одна из самых популярных интерактивных онлайн-платформ для быстрого изучения Python. Я знаю многих программистов Python, в том числе и меня, которые прошли курс основ Python CodeAcademy. Он отлично подходит для абсолютного новичка, и вы можете справиться с ним за неделю. увлечет вас программированием на Python.
  • DataCamp: короткие видеоролики от экспертов с непосредственными упражнениями на клавиатуре. Это соответствует курсам CodeAcademy.
  • * PythonTutor.com: инструмент, который поможет вам поэтапно писать и визуализировать код. Я рекомендую объединить этот инструмент с другим учебным ресурсом. Этот инструмент значительно упрощает изучение основ Python, потому что вы можете визуализировать, что делает ваш код.

Неинтерактивные ресурсы

Неинтерактивные ресурсы делятся на две подкатегории: книги и веб-сайты.

Книги

Изучая книги, я заметил, что большинство из них на самом деле предназначены для существующих программистов, заинтересованных в изучении Python, или для опытных программистов на Python, которые ищут надежные справочные материалы («кулинарные книги») или специализированную литературу. Ниже я перечислил только книги, которые, на мой взгляд, могут быть полезны новичкам.

Сайты

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

  • * Класс Python от Google: учебные пособия, видео и упражнения по программированию на Python для начинающих от компании, ориентированной на Python.
  • * Автостопом по Python: это руководство поможет вам изучить и улучшить код Python, а также научит настраивать среду программирования. Поиск по сайту невероятно эффективен, помогая вам найти то, что вам нужно.Я не могу достаточно рекомендовать этот сайт.
  • * Python for Everybody: онлайн-книга, содержащая инструкции по изучению Python для тех, кто заинтересован в решении задач анализа данных. Доступен в формате PDF на испанском, итальянском, португальском и китайском языках.
  • * Python For You and Me: онлайн-книга, охватывающая темы для начинающих и продвинутых в концепциях Python, а также знакомство с популярным фреймворком Python для веб-приложений.
  • * Python.org: официальная документация Python.На сайте также есть руководство для начинающих, глоссарий Python, руководства по настройке и практические инструкции.
  • * Программирование на Python: Programiz имеет длинный учебник по основам Python, который действительно хорошо сделан. Это не должно быть бесплатным, но это так.
  • * RealPython.com: большая коллекция специализированных руководств по Python, большинство из которых содержит видео-демонстрации.
  • * Sololearn: 92 главы, 275 связанных викторин и несколько проектов, охватывающих основы Python, к которым также можно получить доступ через мобильное приложение.
  • * Tutorialspoint.com: учебник без излишеств, охватывающий основы Python.
  • * W3Schools for Python: еще один серьезный учебник от уважаемого ресурса для веб-разработчиков.

Видеоресурсы

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

Предварительно записанные курсы

  • Coursera: Большой каталог популярных курсов Python для всех уровней. Большинство курсов можно пройти бесплатно, а платные курсы имеют сертификаты. Вы также можете просматривать курсы в их мобильном приложении.
  • EdX: проводит университетские курсы, посвященные конкретным сценариям использования Python (наука о данных, разработка игр, искусственный интеллект), но также охватывающим основы программирования. У EdX также есть мобильное приложение.
  • Pluralsight: каталог видеороликов, охватывающих основы Python, а также специализированные темы, такие как машинное обучение на Python.
  • RealyPython.com: коллекция предварительно записанных видеороликов по основам Python для начинающих.
  • * TreeHouse: Библиотека видеороликов по основам Python и промежуточный материал.
  • EvantoTutsPlus: 7,6 часа предварительно записанных видео по основам Python, плюс некоторый промежуточный контент.
  • * Udacity: 5-недельный курс по основам Python. Также охватывает популярные модули в стандартной библиотеке Python и других сторонних библиотеках.
  • Udemy: Библиотека популярных курсов Python для учащихся всех уровней.Трудно выделить конкретный курс. Я рекомендую предварительно просмотреть несколько курсов Python для начинающих, пока не найдете тот, который вам больше всего нравится. Вы также можете просматривать курсы в их мобильном приложении.

Живые курсы

  • General Assembly: Этот интерактивный онлайн-курс от General Assembly устраняет все догадки при изучении Python. С General Assembly у вас есть тщательно подобранная и всеобъемлющая учебная программа по Python, живой инструктор, технический специалист, а также сеть сверстников и выпускников, с которыми вы можете общаться во время и после курса.

4. Рассмотрите возможность изучения библиотеки Python.

Помимо изучения Python, полезно изучить одну или две библиотеки Python. Библиотеки — это набор специализированных функций, которые служат «ускорителями». Без них вам пришлось бы писать собственный код для выполнения специализированных задач. Например, Pandas — очень популярная библиотека для управления табличными данными. Numpy помогает выполнять математические и логические операции с массивами. Для покрытия библиотек потребуется еще один пост — а пока просмотрите этот Python.org о стандартных библиотеках Python и на этой странице GitHub о дополнительных библиотеках Python.

5. Ускорьте процесс установки Python с помощью Anaconda.

Вы можете столкнуться с проблемой загрузки установщика Python с веб-сайта Python Software Foundation, а затем поиска и загрузки дополнительных библиотек; или вы можете загрузить установщик Anaconda, который уже входит в состав многих пакетов, которые вы будете регулярно использовать, особенно если вы планируете использовать Python для анализа данных или науки о данных.

6. Выберите и установите 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.

7. В случае сомнений используйте Google для устранения неполадок с кодом.

Когда вы работаете над упражнениями, примерами и проектами Python, одним из простейших способов устранения ошибок будет обучение у других разработчиков Python. Просто выполните быстрый поиск в Интернете и включите ключевые слова о своей ошибке. Например, «как объединить два списка в Python» или «Python, как преобразовать в datetime» — вполне приемлемый поисковый запрос для запуска, который приведет вас к нескольким популярным форумам сообщества, таким как StackOverFlow, Stack Exchange, Quora, Programiz. и GeeksforGeeks.

8. Запланируйте обучение Python и придерживайтесь его.

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

Заключительные мысли

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

Как выучить Python за 21 день?

В настоящее время Python является одним из самых универсальных и востребованных языков программирования в мире информационных технологий. По статистике, в мире насчитывается около 8–9 миллионов разработчиков Python, и их число быстро растет. Между тем, средняя зарплата разработчика Python начального уровня в Индии составляет около 4-6 LPA , а его богатые функции, такие как упрощенный синтаксис , с динамической типизацией и т. Д.сделать его наиболее рекомендуемым языком программирования для начинающих. Кроме того, существует множество передовых технологий, таких как Artificial Intelligence , Machine Learning , Big Data и т. Д., Которые в значительной степени полагаются на Python. Действительно, если вы, , начнете изучать Python , следуя правильным подходам, этот язык может предложить вам гораздо больше для построения успешной карьеры !!

Прежде чем двигаться дальше, давайте сделаем краткое введение в язык Python .Python, разработанный Гвидо Ван Россум в 1991 году, представляет собой универсальный язык программирования . Этот язык широко используется в Web Development , Data Science , Machine Learning и различных других областях, имеющих тенденцию в мире высоких технологий. Более того, Python поддерживает несколько парадигм программирования и имеет огромный набор библиотек и инструментов. Кроме того, язык предлагает различные другие ключевые функции, такие как лучшая читаемость кода , широкая поддержка сообщества , меньше строк кода и многие другие.В этой статье мы обсудим подробный учебный план или план действий, которым вам нужно следовать, чтобы выучить Python всего за 21 день!

1. Понимание основ (День: 1)

Это первая и самая важная задача, которую вам нужно выполнить — Чтобы понять природу и основы языка Python ! Вам необходимо пройти углубленное введение , функций и приложений языка. Между тем, вы также должны знать о процессе установки и настройке пути для запуска программ Python.Вам также рекомендуется создать вашу первую базовую программу Python , которая поможет вам ознакомиться с синтаксисом и процессом выполнения программы Python. Кроме того, вы можете изучить некоторые интегрированные среды разработки (IDE) , такие как Pycharm, Jupyter и другие.

2. Изучите типы данных, переменные и операторы Python (день: 2-3)

Теперь вам нужно сделать шаг вперед и узнать об основных элементах языка Python — переменных, типах данных и операторах .Хотя когда дело доходит до переменных Python, вам не нужно объявлять переменные перед их использованием, поскольку Python — это язык программирования с динамической типизацией . Более того, вам необходимо изучить различные встроенные типы данных в Python , такие как Numeric , Boolean , Тип последовательности и т. Д. Кроме того, вы можете изучить операторы в Python и попрактиковаться в нескольких базовых программах. а также по этим темам для более подробного разъяснения понятий.

3.Изучите условные операторы и операторы управления потоком в Python (День: 4-5)

После изучения основ Python, переменных, операторов и т. Д. Теперь вам нужно понять условные операторы и операторы потока управления в программировании на Python. Управление потоком программ Python касается различных тем, таких как For Loop , While Loop , Do-While Loop и т. Д. Между тем, условные утверждения касаются нескольких концепций, таких как If , If- else , Вложенный if-else и т. Д.Вам необходимо подробно осветить эти темы, а также рекомендуется решить несколько вопросов по программированию, относящихся к этим темам. Также можно принять во внимание несколько других тем, таких как управляющие операторы, такие как Break , Continue , Pass и т. Д.

4. Понимание операций со строками, списками и словарями в Python (День: 6-7)

После того, как вы закончите с вышеупомянутыми темами, теперь вам необходимо понять строку, список и словарь Манипуляции на языке Python.В общем, словарь в Python представляет собой неупорядоченный набор элементов, каждый из которых содержит пару ключ / значение . Более того, String в Python представляет собой массив байтов, представляющих символы Unicode, а List в Python представляет собой изменяемую структуру данных, которая касается упорядоченной последовательности элементов. Кроме того, вам рекомендуется изучить несколько других тем, таких как Tuple , Наборы и т. Д.

5. Ознакомьтесь с функциями и модулями Python (День: 8-10)

Кроме того, вам необходимо понимать одну из самых важных частей программирования на Python — функции и модули в Python .Вам необходимо изучить различные аспекты функций Python, такие как типы функций, как написать и вызвать функцию, функцию с аргументами и т. Д. Кроме того, вам также необходимо узнать о модуле в Python, который представляет собой файл, содержащий Определения и утверждения Python. Кроме того, вам нужно знать о нескольких других темах, таких как Python Closures , Packages , Lambda functions и различных других.

6. Выполните операции с файлами Python (День: 11-12)

Теперь пора глубже погрузиться в мир программирования на Python и разобраться в обработке файлов и операциях с файлами в Python .Действительно, Python поддерживает обработку файлов и позволяет обрабатывать файлы с различными параметрами обработки файлов. Вам нужно узнать о различных операциях, таких как Чтение и запись файлов , Открытие и закрытие файлов , Чтение между строками и т. Д. Вам необходимо выполнить различные соответствующие функции, такие как open ( ) , split () , append () и многие другие. Вы также можете изучить несколько дополнительных тем, таких как функция поиска Python и т. Д.

7. Понимание объектно-ориентированного подхода в Python (День: 13-15)

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

8. Узнайте о регулярных выражениях и обработке исключений в Python (День: 16-18)

После рассмотрения вышеупомянутых тем теперь вам необходимо понять несколько более сложных и лежащих в основе концепций Python, таких как Регулярные выражения , Обработка исключений и т. Д. Когда дело доходит до обработки исключений, рекомендуется охватить несколько тем, таких как ошибки и исключения в Python, определяемые пользователем исключения, исключения попытки Python, встроенные исключения и т. Д. .Более того, вам также необходимо сосредоточиться на регулярных выражениях в Python , которые обозначают последовательность символов, образующих шаблон поиска. На этом этапе можно принять во внимание несколько дополнительных тем: Взаимодействие с базой данных Python, и т. Д.

9. Многопоточность и Python CGI (День: 19-21)

Кроме того, вам нужно узнать еще несколько расширенные темы, такие как многопоточность, Python CGI и т. д. Многопоточность в Python касается различных концепций, таких как Блок управления потоками , Разветвление потоков , Синхронизация потоков и т. д.Между тем, программа Common Gateway Interface (CGI) Programming на Python касается набора правил, которые используются для установления динамического взаимодействия между веб-сервером и браузером. Кроме того, вам также рекомендуется изучить другие важные темы, такие как Python Collections и т.д. Язык . Все, что вам нужно делать, это освещать несколько тем каждый день, чтобы охватить всю учебную программу всего за 21 день .Чего же вы ждете? Выделите немного времени из своего плотного графика на следующий 21 день и погрузитесь в мир программирования Python !!

5 советов, как выучить Python с нуля. Практические советы по работе с… | Автор: Zolzaya Luvsandorj

По моим наблюдениям, человек учится больше, когда учится активно, а не пассивно. Смотреть и читать — это пассивное обучение, тогда как делать заметки, обобщать то, что вы узнали и что практиковать, — это активное обучение. Поэтому при просмотре обучающих видео не смотрите их как фильм! Точно так же, когда дело доходит до учебников / блогов, не читайте их как художественный роман! Обязательно создайте свою собственную шпаргалку по синтаксисам в процессе обучения.Это упростит вам тренировку. Когда я проходил вышеупомянутые курсы Udemy, я изучил так много полезных концепций и знал, что не запомню все, несмотря на то, насколько интуитивно они выглядели иногда . Поэтому после просмотра каждого обучающего видео я снова просматривал материал, чтобы записать ключевые фрагменты кода, которые показались мне важными и полезными для моей шпаргалки.

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

Когда я записывал примеры синтаксиса, я фактически написал их от руки. 😅 Это может показаться некрасивым, но написание моей шпаргалки от руки имело следующие преимущества:
🍀 процесс записи фрагментов ручкой и бумагой заставляет меня замечать мелкие детали синтаксиса и улучшает запоминание
🍀 легче добавлять заметки на та же тема, что и я узнаю больше
🍀 легче найти конкретный синтаксис, потому что я примерно помню, где я их написал

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

Наконец, вы также можете почерпнуть вдохновение из готовых шпаргалок. Вот несколько примеров от Datacamp или Dataquest.

📍 Рекомендуемое действие: Когда вы будете проходить рекомендованный курс Udacity, обязательно сделайте свой собственный шпаргалку для дальнейшего использования.

Как изучить Python для машинного обучения

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

В этом посте вы узнаете, как правильно выучить язык программирования и как получить помощь. Прочитав этот пост, вы будете знать:

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

Приступим.

Как изучить Python для машинного обучения
Фото Федерико Ди Дио, некоторые права защищены.

Как изучить Python

Есть много способов выучить язык, как и естественные языки, такие как английский, или язык программирования, например Python. Младенцы изучают язык, слушая и подражая. Постепенно, когда они выучили образец и некоторый словарный запас, они могли составлять свои собственные предложения. Напротив, когда студенты изучают латынь, вероятно, они начинают с грамматических правил.Единственное и множественное число, изъявительное и сослагательное наклонения, именительный падеж и винительный падеж. Тогда мы сможем построить предложение на латыни.

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

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

def secant_method (f, x0, x1, итерации):
«» «Вернуть корень, вычисленный с использованием метода секанса.» «»
для i в диапазоне (итераций):
x2 = x1 — f (x1) * (x1 — x0) / float (f (x1) — f (x0))
х0, х1 = х1, х2
возврат x2

def f_example (x):
возврат x ** 2 — 612

корень = secant_method (f_example, 10, 30, 5)

print («Корень: {}».format (корень)) # Корень: 24.738633748750722

def secant_method (f, x0, x1, iterations):

«» «Возвращает корень, вычисленный с использованием метода секанса.» «»

для i в диапазоне (итераций):

x2 = x1 — f (x1 ) * (x1 — x0) / float (f (x1) — f (x0))

x0, x1 = x1, x2

return x2

def f_example (x):

return x ** 2 — 612

root = secant_method (f_example, 10, 30, 5)

print («Корень: {}».format (root)) # Корень: 24.738633748750722

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

Следующее, что вы можете сделать, это изменить функции. Например, что, если мы не используем метод секущей для поиска корня, а используем метод Ньютона? Вы можете догадаться, как для этого изменить уравнение в строке 4. А как насчет метода деления пополам? Вам нужно добавить оператор , если f (x2)> 0 , чтобы решить, по какому пути мы должны идти. Если мы посмотрим на функцию f_example , мы увидим символ ** . Это оператор экспоненты, означающий $ x $ в степени 2.{2-612} $? Вам нужно будет вернуться и проверить руководство по языку, чтобы увидеть иерархию приоритета оператора .

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

Чего следует избегать

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

Python — это язык, не связанный со своим интерпретатором или компилятором. Поэтому разные интерпретаторы могут вести себя немного иначе. Стандартный интерпретатор с python.org — это CPython, который также называют эталонной реализацией. Распространенной альтернативой является PyPy. Независимо от того, какой из них вы используете, вам следует учиться на Python 3, а не на Python 2, поскольку последний является устаревшим диалектом. Но имейте в виду, что Python получил распространение с Python 2, и вы все еще можете встретить довольно много программ Python 2.

Ресурсы

Чтение ресурсов

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

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

Среда программирования

Python встроен в macOS, но вы можете установить более новую версию. В Windows часто можно увидеть людей, использующих Anacronda вместо того, чтобы устанавливать только интерпретатор Python. Но если вы считаете, что установка IDE и среды программирования Python слишком сложна, вы можете подумать об использовании Google Colab.Это позволяет вам писать программу на Python в формате «записной книжки». Действительно, многие проекты машинного обучения разрабатываются в блокноте Jupyter, поскольку он позволяет нам быстро изучить различные подходы к проблеме и визуально проверить результат.

Вы также можете использовать онлайн-оболочку по адресу https://www.python.org/shell/, чтобы опробовать короткий фрагмент. Обратной стороной по сравнению с Google Colab является то, что вы не можете сохранить свою работу.

Обращение за помощью

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

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

Если вы все еще не уверены, попробуйте поискать в Интернете. Если вы пользуетесь Google, вы можете использовать один прием — заключить все сообщение об ошибке в двойные кавычки при поиске.Или иногда поиск в StackOverflow может дать вам лучшие ответы.

Дополнительная литература

Здесь я перечисляю несколько советов для новичка. Как упоминалось выше, учебное пособие по Python — хорошее начало. Это особенно актуально во время написания, когда недавно был выпущен Python 3.9 и введен новый синтаксис. Печатные книги обычно не так обновляются, как официальные онлайн-учебники.

Есть много книг для начинающих по Python. Вот несколько коротких, которые я знал:

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

Сводка

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

Как выучить Python — научиться программировать за 30 дней

Сегодня мы говорим с Мэттаном Гриффелем (@mattangriffel) о том, как изучать Python.Маттан преподает код для студентов MBA в Колумбийской школе бизнеса. Он также преподает курс Learn Python здесь, в One Month.

Зачем изучать Python?

  1. Python — один из самых популярных языков для анализа данных и веб-разработки
  2. «Python — новый Excel» используется на уроках финансов в бизнес-школах.
  3. Google, Instagram, Uber и многие другие компании используют Python.
  4. В наши дни многие рабочие места требуют навыков Python: от журналистов данных до маркетологов и врачей.

В этом выпуске вы узнаете

  • Как Маттан научился кодировать
  • Примеры проектов Python, которые могут построить новички
  • Лучший язык программирования для первого изучения
  • Лучший способ изучить Python
  • Бесплатные ресурсы Python для начинающих

Хотите учиться у Маттана? Вы можете узнать больше об онлайн-курсе Маттана по питону.

🐶 Подпишитесь и оцените подкаст Learn to Code в iTunes! ❤️

Вот мое интервью с Мэттаном Гриффелем:

Маттан, как ты научился программировать?

Маттан : Я начал с изучения Ruby on Rails, который по сути является Ruby.Ruby похож на альтернативу Python, и мне он очень понравился. Я начал с этого, потому что хотел создать веб-сайт, по сути, как продукт. И один из моих друзей знал, как писать код, и указал мне в этом направлении. И я подумал: «Хорошо, я сделаю, что ты скажешь. «Я выучу это».

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

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

Что вы изучали в колледже?

Mattan: Я изучал финансы и философию. Я учился на двух разных предметах, совершенно не связанных между собой. Не кодирование.

Крис: Хорошо, но вы добрались до преподавания кодирования в бизнес-школе.

Маттан: Верно. Для меня это немного удивительно.

Крис: Знают ли студенты бизнес-школы, что [вы не изучали программирование]?

Маттан: Да, они это прекрасно знают.«Потому что я говорю об этом, и, честно говоря, я думаю, что это часть того, что делает меня хорошим учителем для людей. Иногда, когда эксперт чем-то занимается в течение 10 или 20 лет, они усваивают все эти концепции, то есть они так привыкают к этому, когда учатся на этом пути. Они забывают, что это то, чего не знает большинство людей. Поэтому, когда они пытаются это объяснить, они крадутся за всеми этими запутанными понятиями.

Например, если вы когда-нибудь слышали, чтобы кто-то технический (кто-то, умеющий программировать), говорил о кодировании и пытался вам это объяснить, и вы запутались в первые 10-15 секунд? Это потому, что они изо всех сил пытались объяснить то, что, по их мнению, является довольно сложным, но на самом деле у них не было времени подумать о том, что вы знаете и чего не знаете.

Крис: И все это время вы думаете: «Но этот человек в этом эксперт. Они знают то, чего я не знаю. Я, должно быть, тупой.

Маттан: Да, и я думаю, что все наоборот. Я думаю, что если кто-то не может объяснить что-то сложное так, чтобы это было понятно любому, то он на самом деле не эксперт в этом.

Крис: Мне это нравится!

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

Что побудило вас научиться программировать?

Mattan: На самом деле я не начинал думать, что собираюсь научиться программировать. Я начал с мысли, что хочу построить — у меня есть эта идея, и я хочу ее построить. Поэтому я пошел к своему другу, который, как я знаю, уже построил компанию самостоятельно, и сказал: «Помогите мне построить это».

Он сказал: «Подожди. Если вы пытаетесь построить это, если вы пытаетесь найти кого-то, кто может построить это для вас, или волшебное решение вашей проблемы, этого не существует.Но, к счастью для вас, вы можете научиться программировать и создавать его самостоятельно ».

Я подумал: «О чем ты говоришь? У меня нет диплома по информатике. Я не собираюсь тратить все это время, чтобы научиться этому «.

Но он такой: «Нет, поверь мне. Это проще, чем ты думаешь. А потом он рассказал мне свою историю. По сути, однажды летом он просто работал в гараже, и ему было скучно ждать и вывозить машины. Затем у него, как и у меня, возникла идея, и друг порекомендовал ему книгу.Итак, он прочитал книгу и построил эту штуку. И на самом деле, за три месяца он такой: «Вот дерьмо, я научился программировать».

Крис: Он научился кодировать по книге?

Маттан: Да, именно так. К счастью, он не порекомендовал мне книгу, потому что у меня аллергия на книги, по крайней мере, в то время. Я вроде как пришел в себя, особенно в книгах по кодированию, потому что это стало мне внутренне интереснее. Но когда я только начинал, единственная причина, по которой я действительно мог подобрать это и следовать, — это то, что я смотрел видео, видео людей, проходящих через это, и помогал мне через это.

Вы использовали YouTube или онлайн-курсы программирования, чтобы научиться программировать?

Маттан: Я начал с Линды. По сути, это был недельный урок. Это был набор из 15 видеороликов, и это было довольно хорошо, после просмотра я подумал, я сделал то, что они сказали, но я до сих пор не знаю, как уйти сам и что-то сделать.

Крис: Было ли полезно научиться программировать с Линдой?

Mattan: Учиться с Линдой определенно лучше, чем ничего.Я прошел через это, и это было моей первоначальной целью — просто не сдаваться.

Попутно я прошел через это, но все еще был немного сбит с толку. Я думаю, что когда ты чему-то учишься, ты следуешь этому процессу, верно? Ты ребенок, ты копируешь людей. Вы делаете то, что делают они, и не понимаете, зачем вы это делаете, но, может быть, вы начинаете понимать это, о, вы делаете то же самое, и вы получаете такой результат, верно?

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

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

Кодирование

в некотором роде похоже, где я мог бы сказать вам, что все концепции это переменная, вот как вы это делаете. Если вы просто посмотрите, как я кодирую, и я вам это объясню, вы скажете: «О, я понял».

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

Какие еще ресурсы вы использовали, чтобы научиться программировать?

Mattan : Я также просмотрел эту онлайн-книгу под названием Rails Tutorial. А потом я подумал: «Думаю, я начинаю понимать, но собираюсь провести еще один вводный урок». Затем я прочитал Стэнфордское введение в программирование в онлайн-классе iTunes U. И к тому моменту я подумал: «Хорошо, думаю, я понял».

Крис: Это восхитительно. Похоже, вы только что упомянули три ресурса, которые использовали.Вы просто играли одно за другим? Было ли это на ту же тему или было иначе? Было ли все это просто Ruby on Rails, или все было иначе?

Mattan: Все это было Ruby on Rails, потому что мой друг Джон сказал так: «Вот чему тебе следует научиться». И поэтому я не хотел идти в разных направлениях, потому что мне казалось, что если я пытаюсь выучить три разных языка, то я на самом деле не учу ни один из них.

Крис: В этом есть смысл.

Маттан: Да, это так. И я не обязательно думаю, что они были один за другим. Думаю, я сделал первый, и я взял паузу на несколько недель, а потом подумал: «Хорошо, я вроде как потерял все». Позвольте мне выучить еще один, чтобы освежиться. И это вернулось довольно быстро. Думаю, третий, который я сделал, был довольно близок после этого. Но на это ушло примерно месяц. Не как каждый день, с девяти до пяти или что-то в этом роде, но может быть полчаса, или час в день, или чуть больше, чуть меньше, в зависимости от того, что происходило.

Сколько времени вам понадобилось, чтобы научиться программировать?

Mattan: Да, это забавный вопрос, потому что я думаю, что значит знать, как программировать, на самом деле очень широко. Итак, вы получите степень по информатике, вы проучитесь четыре года. Вы умеете программировать? Да, наверное, я думаю, что большинство людей скажут, что специалист по информатике умеет программировать. Но если вы спросите их, создайте мне веб-сайт, они могут на самом деле не знать, как это сделать, верно?

«Потому что, возможно, они никогда не узнали, как создать веб-сайт в Интернете, как купить доменное имя, как сделать все это.Могли ли они это понять? Наверное. Собираются ли они разобраться в этом самостоятельно или, может быть, они могут спросить друга, который делал это раньше? Это всевозможные решения проблем, например технических. Тот факт, что они могли понять это в разумные сроки, я думаю, это то, что мы думаем как знание того, как кодировать, верно? Знать, как решить техническую проблему с помощью кода или использовать технические решения в разумные сроки, верно?

А теперь возьмем моих студентов, которые посещают курс «Месячный Python» или окончившие бизнес-школу Колумбийского университета. Большинство из них, окончившие курс, скажут, что я не программист.Я не умею программировать. У меня только что был опыт чтения и написания кода. Мне нужно решить некоторые проблемы. Но я не чувствую себя достаточно комфортно, называя себя кодером. И я не собираюсь поступать на работу программистом. И что бы там ни было, это может быть разумно. Может, ты не хочешь этого делать.

Но тогда я бы спросил их: «Допустим, я дал вам вызов», проблему, которую вы не знали, как решить, верно? И у вас было неограниченное количество времени, думаете ли вы, что в конечном итоге придумаете, как это сделать? » И их ответ, вероятно, был бы примерно таким: «Да, я, наверное, спрошу кого-нибудь или погуглил бы, просмотрел все ресурсы и выяснил это.”

Я говорю: «Ну, если ты сможешь это сделать, тогда ничто на самом деле не отделяет тебя от кодировщика, верно? Кодер может это сделать, вы можете это сделать. Вопрос лишь в том, сколько времени у вас уйдет на это, верно? Так что, возможно, если бы я сказал, хорошо, ваша цель — создать веб-сайт, и у вас есть год, чтобы он заработал. Вы могли бы понять это, если бы это было все время в мире. А может, программист за неделю справится? Или, если у тебя все хорошо, день.

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

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

Сколько времени вам потребовалось, чтобы наконец сказать: «Я могу это сделать! Я программист »?

Mattan: Я бы сказал, около шести месяцев. Я думаю, что этот момент изменится для людей в зависимости от того, что они делают и как используют это в своей работе. Для меня это определенно произошло, когда я научился программировать. Что ж, я составил руководства, начал преподавать классы кодирования и даже не обязательно называл себя хорошим программистом в тот момент или говорил, что знаю, как кодировать.

Крис: Это когда мы оба преподавали на Генеральной Ассамблее?

Маттан: Да, Генеральная Ассамблея и класс Skillshare. А потом я создал сайт, верно? Это был onemonthrails.com. И именно там мы начали делать эти PDF-файлы и сертификаты выполненных работ для людей. Затем я создал страницу входа, чтобы они могли войти в систему и получить доступ к урокам, и добавил Stripe для обработки кредитных карт, чтобы люди могли вставлять свои кредитные карты, регистрироваться и посещать занятия.И тогда я, наконец, подумал: «О, черт, теперь это серьезно» — не совсем «Я программист», но я подумал: «Если что-то пойдет не так, это моя вина»

Крис: Это потому, что больше никого не было?

Маттан: Ага. Это было похоже на то, что это был только я. Я могу потерять вещи, я могу все испортить. Они платят мне деньги, как будто они должны работать. Это было то давление, что я хотел владеть собственным проектом, что в конечном итоге привело меня к мысли: «О, да, я могу это сделать». Но это было все равно что обрести уверенность в себе, чтобы оказаться в такой пугающей ситуации, честно говоря, я не чувствовал, что я для этого подхожу, а затем доказывал, что могу это сделать.Именно тогда я сказал: «Хорошо, думаю, теперь я могу называть себя кодером».

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

Mattan: Да, я думаю, что самое сложное — это когда вы только начинаете и не знаете, насколько сложен проект, который вы имеете в виду. У вас может быть идея для действительно крутого приложения, которое вы хотите создать, или веб-сайта, который вы хотите создать, но вы не знаете, действительно ли это сложная или легкая задача и сколько времени это займет у меня.«Потому что раньше я советую: выберите проект и работайте над ним.

Ко мне приходили люди с проектами, и я говорил: «Звучит очень сложно. На это у команды из пяти человек могут уйти годы ». Я думаю, это здорово, что люди воодушевлены, обладают творческим потенциалом и хотят что-то сделать, но мой обычный совет есть — подумайте над проблемой, придумайте план действий, уменьшите идею в области бережливых стартапов и минимум жизнеспособных продуктов, определите MVP (минимально жизнеспособный продукт) того, что вы хотите создать, и возьмите этот крошечный кусочек.Хотя бы потому, что это то, что вы, надеюсь, сможете избавиться от этого за короткий промежуток времени.

Как узнать, что такое минимально жизнеспособный продукт? Трудно понять это, пока не начнешь учиться. Итак, я думаю, что процесс на самом деле питается сам по себе. Я бы сказал: это нормально, если задуматься о какой-то идее. Или, если вы обдумываете какую-нибудь интересную идею, помните об этом. Но когда вы заканчиваете урок, или учебник, или что-то в этом роде, отслеживайте те вещи, которые вы можете использовать для чего-то другого, похожего на то, что вы делаете.Немного раздвигайте границы в разных направлениях, но будьте уверены, что вы все еще делаете то же, что и они.

Вот мой пример. Когда я только учился, я прочитал учебник по Ruby on Rails, в котором, по сути, вы можете создать Twitter с помощью Ruby on Rails, верно? Итак, вы копируете то, о чем уже знаете. Я не пошел, а потом сказал: «Хорошо, теперь я попытаюсь создать приложение Uber», потому что это совсем другое дело. Я начал с того, что сказал: «Хорошо, хорошо, Твиттер», если я уберу твиты и заменю их видео, это будет похоже на то, что я мог бы разместить там уроки.Так что я как бы раздвигал границы того, что знал ». Вы представляете Твиттер и то, как работает интерфейс, и у вас есть текстовые твиты. Но вместо текста это было другое изображение или видео.

Итак, пока я шел, я придумывал эти идеи, но думал: хорошо, я думаю, что знаю, как делать 90% того, что я хочу делать, на основе того, что я узнал. И есть 10%, которые мне еще предстоит выяснить. Так что это все равно что откусить что-то, что можно жевать, а не пытаться сделать что-то, в чем вы даже не знаете, с чего начать.Если вы попробуете лишние 10%, вы не знаете, как это сделать, и это вас сильно расстроит, просто попробуйте что-нибудь другое. Не женитесь на идее.

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

Обучение — отличный способ сделать это, потому что люди действительно хотят помочь. Каждый программист полагался на других людей, которых раньше не знал, и теперь они действительно благодарны этим людям. Итак, они хотят передать это, заплатите вперед. Все, что вам нужно сделать, это быть искренним и искренним, не раздражать их, но установить связь, они захотят вам помочь. Вы можете встретить этих людей на встречах. Или, даже если вы этого не сделаете, вы можете опубликовать его на Facebook или на форумах Reddit, Hacker News, Slack or play и на других сайтах, где есть люди.

Где вы встречаетесь с разработчиками? Встречи?

Mattan: Да, есть встреча Python Hacker Hours, на которой происходит очень много всего. Даже если вы живете не в городе, где проводятся встречи, есть и онлайн-сообщества, где люди готовы помочь.

Какой язык программирования лучше всего подходит для начинающих?

Mattan: С одной стороны, мой ответ: не беспокойтесь об этом слишком сильно, потому что я начал с Ruby, а затем выучил Python, и мне было довольно легко выучить Python.Мне потребовалось буквально два месяца, чтобы понять это, потому что часть обучения программированию — это изучение строительных блоков работы компьютеров. Вы узнаете, что такое переменная и как создать цикл. И хотя способы, которыми вы их выполняете на разных языках, немного различаются, реальная вещь, которую вы изучаете, — это просто строительные блоки.

Когда вы знаете это на одном языке, вы просто думаете: «Хорошо, вот как вы это делаете на другом языке». Вот почему не так страшно говорить: «Вот дерьмо, а что, если я выучу не ту?» Но с точки зрения спроса, я бы сказал, Python действительно хорош, потому что это предпочтительный язык для науки о данных, анализа данных и программирования.

Это потому, что большинство основных инструментов или подключаемых модулей для анализа данных, которые были созданы и выпущены другими людьми, чтобы упростить вам выполнение таких задач, как статистика, или анализ больших наборов данных, или их построение в виде графиков, они были созданы. в Python. Для этого есть более длинная и сложная причина. Это действительно интересно. Когда Google только начинал, они написали свой парсер, вещь, которая ходила по сети, и выяснили, как выглядит Интернет, они использовали для этого Python.

Крис: Итак, Google построен на Python?

Mattan: Да, Ларри и Сергей написали это на Python. И если вы посмотрите на их официальную документацию начала 90-х годов, они покажут код Python, который они используют. Понятия не имею, где они наткнулись на Python. Это был молодой язык, и кто знает, как они это догадались? Но они использовали Python. Затем, когда Google стал популярным стартапом и начал расти, они наняли парня, который изобрел Python, для работы в Google.

У них была общая концепция 20% времени, и они говорили, что вы можете потратить 20% своего времени, просто работая над чем угодно, не так ли? Вы можете продолжать работать над Python, вы можете создавать инструменты для науки о данных, что хотите. Что ж, они сказали ему и всем, кто присоединился к их компании.

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

Итак, таким же образом достигается критическая масса. Например, Лос-Анджелес начинается с того, что это крошечный развлекательный центр, потому что погода хорошая, и им не нужно отменять съемки или что-то еще, поэтому люди переезжают туда. Однако в определенный момент это становится тем местом, где вы должны быть, если хотите работать в сфере развлечений. То же самое с кодированием и наукой о данных.

Итак, вы хотите быть в Google, потому что он там, и вы хотите работать и анализировать данные, поэтому вы используете Python, потому что все основные функции машинного обучения построены на Python.

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

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

Я также лично верю Ruby on Rails. Если вы хотите создавать веб-сайты, я думаю, что это отличный вариант, особенно любой веб-сайт, на котором у вас есть участники, которые регистрируются как пользователи и делают что-то на веб-сайте. Я не думаю, что Python — лучший вариант для этого. Тем не менее, это просто вопрос, может быть, здесь или там есть небольшие преимущества для некоторых языков для некоторых приложений.В целом, если честно, я считаю Python отличной отправной точкой.

Как лучше всего выучить Python?

Mattan: Я имею в виду, что ресурсов Python много. Я преподаю курс Python за один месяц! Я, конечно, считаю, что это замечательно.

Тот, к которому я обычно отправляю людей, называется Learn Python the Hard Way . Но это не бесплатно. Это примерно 29 долларов, так что это относительно дешево.

Крис: Изучите Python сложным путемК тому же Зед Шоу просто отличный учитель. [Еще одна замечательная книга] Automate the Boring Stuff with Python . Я считаю, что [для этого] есть еще и веб-сайт. Книга интересна, потому что она не столько об основах Python, сколько о крутых вещах, которые вы можете делать с Python, например о том, как вы можете использовать его для автоматизации довольно утомительных вещей, над которыми вы, возможно, работаете в своей работе.

Существует также The Data Science Handbook , , написанный для Python.Это книга, но она также доступна в Интернете совершенно бесплатно. Так что обычно, если вы действительно хотите узнать о науке о данных, это хороший третий шаг. А еще есть все эти онлайн-ресурсы. Есть ли в Codecademy еще бесплатные уроки Python?

Chris: Я так думаю, но иногда, когда я иду и отправляю людей туда, появляется всплывающее окно, и они хотят получить вашу электронную почту, и я думаю, что у них есть версия Pro. Это немного сбивает с толку. Я не знаю, вы считаете это полезным?

Mattan: Я считаю, что они хороши не как способ учиться, а как способ практиковаться во время обучения.Есть Drills, но это не очень похоже на курс. Есть HackerRank, сайт с действительно хорошими тренировками. И еще одно упражнение. Но с точки зрения обучения мне кажется, что Automate the Boring Stuff with Python и Learn Python the Hard Way — две хорошие отправные точки.


Готовы изучить Python? Вы можете присоединиться к Mattan в One Month, где мы предлагаем 30-дневный онлайн-курс для начинающих по программированию.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *