Если вы действительно задаете этот вопрос, то мы собираемся предположить, что вы новичок, который не совсем уверен, стоит ли тратить свое время на изучение Python.
Мы полностью понимаем это.
Когда вы новичок в мире программирования, вас легко может ошеломить огромное количество языков программирования.
Вероятно, вы получили много советов, чтобы начать свое обучение программированию с Python.
Но вы все еще не уверены.
Что вы действительно можете сделать с Python?
В этой статье мы постараемся решить ваши проблемы и перечислю все основные приложения, для которых используется Python.
Итак, начнем!
Давайте уберем это с дороги.
Прежде всего, Python — это язык программирования общего назначения.
Как и любой другой язык программирования, Python — это инструмент, который вы можете использовать для создания программного обеспечения. ЛЮБОЕ ПО.
Это очень важно для понимания и усвоения, потому что многие новички думают, что они загоняют себя в угол, выбирая один язык перед другим.
Если вы решите изучать C++, Java или Python … у вас все будет хорошо. Все они очень популярные языки, которые очень популярны в нашей отрасли.
Вот список самых популярных языков программирования по индексу TIOBE.
Индекс TIOBE — это известный показатель популярности языков программирования.
Как видите, Python действительно высоко в списке!
В дополнение к своей популярности, Python имеет то преимущество, что он является одним из самых простых в изучении языков программирования.
Поэтому, если вы совершенно новичок в мире программирования и не знаете, с какого языка начинать, мы настоятельно рекомендуем вам начать с Python.
Вот подробное руководство, о процессе изучения Python шаг за шагом.
Python также очень хорошо подходит для определенных типов приложений.
Об этом мы и поговорим в следующих разделах.
Еще одна область, в которой Python выделяется, — это создание веб-приложений.
Многие люди заинтересованы в создании собственных веб-приложений. Может быть, вы хотите создать свой личный сайт, или вы хотите иметь бизнес в Интернете.
По правде говоря, создание веб-приложения подразумевает глубокое понимание многочисленных технологий (не только одной), потому что их так много.
В качестве примера, скажем, вы набираете yahoo.com в своем браузере.
Ваш браузер отправляет запрос на веб-сервер Yahoo, используя протокол связи HTTP.
Веб-сервер Yahoo получает этот запрос и связывается с многочисленными внутренними службами, также используя HTTP (или RPC ).
Эти серверные службы в конечном итоге отвечают обратно на веб-сервер, который собирает несколько файлов (HTML/CSS/JavaScript) и возвращает их обратно в ваш браузер.
Наконец, ваш браузер читает эти файлы и отображает домашнюю страницу Yahoo на вашем экране.
Так как же Python вписывается в эту картину?
Python может быть использован для программирования бэкэнд-сервисов.
Как видите, для того, чтобы создать комплексное веб-приложение, вам необходимо понимать множество технологий.
Тем не менее, есть некоторые библиотеки и платформы Python, которые немного облегчают эту работу.
Например, Flask и Django являются популярными веб-фреймворками, которые позволяют вам писать свои веб-приложения, используя все эти технологии в одном «месте».
Flask — это микро-фреймворк. Это простой веб-фреймворк, способный отправлять и получать сетевые запросы HTTP.
Django, с другой стороны, является полноценным веб-фреймворком. Он может делать все, что делает Flask в дополнение к встроенной поддержке аутентификации, авторизации и моделирования базы данных.
У Flask и Django сильные сообщества и отличная документация.
Когда вы слышите числовой анализ и визуализацию данных , перед глазами обычно всплывает множество случайных чисел и причудливых графиков.
Мы изучали и использовали их в школе, но как мы можем связать этот математический мир с миром программирования?
Есть только несколько языков программирования, которые делают эту работу хорошо.
Python определенно находится на вершине этого списка.
В этом домене есть множество библиотек Python, наиболее часто используемыми являются NumPy , SciPy и Matplotlib.
Давайте поговорим о каждом из них, и что они могут сделать.
NumPy (сокращение от Numeric Python) — это библиотека Python, специально созданная для эффективной и быстрой обработки операций над многомерными массивами. Эти операции включают в себя практически любую операцию, которую вы можете выполнить на матрице.
Но разве мы не можем просто выполнять матричные операции, используя обычные списки в Python?
Короче говоря, NumPy оптимизирован для обработки больших объемов числовых данных. Так что это действительно сводится к производительности.
Когда у вас есть миллионы или миллиарды для обработки, решающее значение имеют скорость и потребление памяти.
Хорошо, а как насчет SciPy ?
Scipy (сокращение от Scientific Python) — это библиотека Python для решения математических, научных и инженерных задач. Вы можете думать об этом как об абстракции поверх NumPy (он на самом деле использует NumPy под капотом).
Некоторыми примерами операций, которые вы можете выполнять с помощью Scipy, являются преобразования Фурье, числовые интегрирования, градиенты, производные и многое другое…
Теперь, когда у вас есть все ваши числовые результаты, как вы на самом деле визуализируете эти результаты в симпатичном графике или круговой диаграмме?
Это где используется Matplotlib.
Matplotlib — это библиотека для создания визуализаций, таких как графики, гистограммы, линейные диаграммы, круговые диаграммы и т. д.
Он может строить 2D-графики, а также 3D-графики.
Вот пример того, как выглядят графы Matplotlib. Эти примеры взяты с сайта Matplotlib.
Сколько раз вы смотрели название на Netflix только потому, что оно было рекомендовано вам? Мы думаем, что этого достаточно.
Это, и многие другие, являются некоторыми из примеров, которые приводятся в действие увлекательной отраслью информатики — машинного обучения.
Хотя концепции машинного обучения существовали в теории с 1960-х годов, лишь недавно он начал набирать обороты, главным образом, из-за огромной доступности вычислительных ресурсов, а также из-за множества языков, которые делали написание приложений машинного обучения «проще».
Python стал «де-факто» языком программирования для написания приложений машинного обучения.
Так что если вы хотите заниматься наукой о данных и машинным обучением в своей карьере, то изучение Python является обязательным!
Итак, скажи мне, какие библиотеки Python я должен изучать, чтобы писать приложения для машинного обучения?
Их много, но самыми популярными являются scikit-learn, Tensorflow и PyTorch.
Для разработки типового приложения для машинного обучения эти библиотеки облегчают работу!
С этими библиотеками вам нужно будет понять, почему вы используете алгоритм ML, как он работает и каковы его недостатки, но вам не нужно беспокоиться о том, «как он реализован».
Однако мы настоятельно рекомендуем вам понять математику и статистику алгоритмов ML, чтобы вы могли рассуждать о работе модели.
Видите ли, каждый может научиться пользоваться библиотекой. Что отличает вас как ученого в области данных, так это ваше понимание фундаментальных концепций, лежащих в основе этих алгоритмов машинного обучения.
Так что имейте это в виду, речь идет только об обучении использованию библиотеки Python.
Когда вы росли, некоторые из вас хотели создать ту шикарную компьютерную систему, которую купил ваш друг. Но вы этого не сделали по понятным причинам.
Благодаря эволюции ресурсов обработки, теперь вы можете купить полноценный компьютер по доступной цене.
Например, очень популярной компьютерной системой является Raspberry Pi.
Raspberry Pi — это компьютер с одной крошечной платой, в котором есть все компоненты, которые типичный компьютер имел бы на одной плате размером с вашу ладонь.
Обычно он используется в учебных целях, но это не должно мешать вам использовать Raspberry Pi для создания интересных проектов в реальной жизни.
Хорошо, это круто и все, но как это связано с Python?
Угадайте, что? На самом деле вы можете запрограммировать свой Raspberry Pi, используя Python.
Под этим мы подразумеваем не только то, что вы можете писать программы на Python, аналогичные тем, которые пишете на типичном компьютере, но также вы можете программировать само оборудование, взаимодействовать с выводами ввода/вывода, индикаторами дисплея и даже внешними устройствами. Это довольно круто!
Мы считаем, что игра с Raspberry Pi — это идеальный способ узнать, как программное и аппаратное обеспечение взаимодействуют друг с другом.