Что можно сделать с помощью питона

Язык программирования Python: преимущества, недостатки и область применения

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

Что можно сделать с помощью питона

Что можно сделать с помощью питона

Python — это скриптовый язык программирования. Он универсален, поэтому подходит для решения разнообразных задач и многих платформ, начиная с iOS и Android и заканчивая серверными ОС.

Преимущества Python

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

Разработка идёт в разы быстрее, потому что кода здесь куда меньше, чем на других языках. И ещё Python отлично подходит новичкам. Именно с него можно начать свой путь программиста, пройдя практический курс «Python-разработчик» от Skillbox.

Что можно сделать с помощью питона

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

Как используется Python

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

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

Чаще всего Python используется в веб-разработке. Для работы с ним подключают фреймворки: Pyramid, Pylons, TurboGears, Flask, CherryPy и — самый популярный — Django.

Существуют и движки для создания сайтов на Python:

Также на Python пишут парсеры для сбора информации в интернете.

Программы

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

Мобильные приложения

Мобильная разработка на Python менее популярна. Для Android чаще пишут на Java, C#, C++ или Kotlin, а для iOS — на Swift или Objective-C. На Python обычно программируют серверную часть приложения. Например, клиент Instagram для iOS написан на Objective-C, а сервер — на Python.

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

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

Встроенные системы (embedded systems)

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

Еще проекты со встроенной системой на Python:

Язык применяется во встроенных системах станков с ЧПУ, средствах автоматического регулирования (температуры, расхода жидкостей, давления и так далее) и в телекоммуникационном оборудовании.

Создание скриптов

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

Где используется Python

Python широко распространен во многих сферах: от системного администрирования до Data Science.

Системное администрирование

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

Благодаря лаконичности Python можно быстро прочитать код и найти слабые места. Форматирование в языке — часть синтаксиса.

Научные исследования

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

Благодаря библиотекам и простоте освоения языка многие учёные выбирают Python — особенно он популярен у математиков и физиков.

Data Science

Python — один из самых используемых в Data Science языков. На нём пишут алгоритмы программ с машинным обучением и аналитические приложения. С помощью него обслуживают хранилища данных и облачные сервисы.

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

Какие компании используют Python

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

Кроме того, его используют в Instagram, Positive Technologies, Houdini, Facebook, Yahoo, Red Hat, Dropbox, Pinterest, Quora, Mail.ru и Яндексе.

Недостатки языка Python

Несмотря на все достоинства, у языка есть и недостатки.

Программы на Python считаются одними из самых медленных.

Приложения для iOS на Swift работают в 8,7 раз быстрее, чем на Python. Реализация PyPy по скорости близка к Java, но в ней есть не все возможности оригинального языка. Python не подходит для задач, требующих большого объёма памяти, — их лучше решать вставками на C или C++.

Сильная зависимость языка от системных библиотек

Из-за этого затрудняется перенос на другие системы. Для этих целей существует инструмент Virtualenv, но и он с недостатками: избыточность полных методов изоляции, костыли, дублирование системных библиотек.

Global Interpreter Lock (GIL) не позволяет выполнять несколько потоков Python одновременно в реализации CPython.

Однако GIL можно отключить на какое-то время, как это сделано в математическом пакете NumPy.

Трудоустройство и средняя зарплата Python-разработчика

По данным с hh.ru на начало 2019 года, в России

4500 вакансий для Python-разработчиков, из них

700 в Санкт-Петербурге. Это меньше, чем по запросу «Java» (

5500), но больше, чем по запросу «PHP» (

Тенденция в том, что Python медленно забирает позиции PHP с рынка веб-разработки. Хотя на PHP всё ещё написано около 80% всех сайтов в интернете.

Что можно сделать с помощью питона

Минимальная зарплата по России начинается с 70 000 рублей, а в Москве — с 80 000 рублей. В основном ищут опытных разработчиков, junior-специалисты менее востребованы.

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

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

Источник

12 идей проектов на Python, которые украсят ваше портфолио

Перевод статьи «12 Unique Python Project Ideas for Your Resume».

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

В этой статье мы разберем 12 идей проектов на Python, которыми можно пополнить свое портфолио. Все идеи — из разных областей.

«Проект закончен лишь тогда, когда он начинает работает на тебя, а не ты на него», — Скотт Аллен

1. Умный ассистент

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

Чтобы создать ассистента, не нужно быть специалистом в области разработки на Python. Вы можете сделать это с помощью доступных пакетов.

Для реализации подобного проекта вы можете использовать, например, Pyttsx3 для распознавания текста. А с помощью модуля os можно добавить функции вроде проигрывания музыки, запуска приложений, поиска по Википедии и т. д. Но запомните одно правило: «одна библиотека — одна функция».

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

У этого проекта нет конечной точки. Чем больше функций, тем профессиональнее и полезнее ваш ассистент.

2. Веб-сайт

Что можно сделать с помощью питона

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

Например, ваш сайт может принимать список адресов электронной почты и отправлять введенное вами письмо на каждый из них. Или конвертировать PDF-файлы в аудио-файлы.

Наверняка у вас есть множество идей — воплотите их в жизнь.

3. Автоматизатор задач

Этот проект похож на первый, но с упором на автоматизацию.

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

Во всем этом вам помогут следующие библиотеки: BeautifulSoup (веб-скрапинг), Selenium (автоматизация действий в интернете), win10toast (уведомления Windows), os (менеджмент папок) и т. д.

Марк Лутц «Изучаем Python»

Скачивайте книгу у нас в телеграм

4. Игра

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

Игра говорит о своем разработчике многое: о его креативности, собранности. Также качество игры показывает, насколько хорошо разработчик знает концепты программирования и ООП.

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

5. Разработка модели компьютерного зрения

Компьютерное зрение — тренд 21 века. Каждая компания внедряет компьютерное зрение в свои системы (в каком-либо виде). Существует множество успешных стартапов в данной области.

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

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

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

Что можно сделать с помощью питона

6. Разработка графического пользовательского интерфейса

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

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

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

7. Приложение для анализа настроения

Настроение — это наши мысли и чувства. Анализ настроения — это изучение субъективной информации в выражениях. Это сфера обработки естественного языка (Natural Language Processing, NLP). С помощью NLP мы можем распределить данные на позитивные, негативные или нейтральные. Для извлечения информации о настроении из текста используются различные техники обработки естественного языка.

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

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

В этом деле вам помогут соответствующие библиотеки, а именно: NLTK, TextBlob, spacy, Gensim и CoreNLP.

8. Поисковый бот

Поисковый бот — это бот, который периодически просматривает сайты и извлекает нужную вам информацию.

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

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

Лучшие библиотеки для такого проекта — Beautiful Soup и requests.

9. Бот для алгоритмического трейдинга

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

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

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

Что можно сделать с помощью питона

10. Пакет Python

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

Создавать пакеты не так сложно — вы можете найти соответствующие руководства на YouTube.

11. Мобильное приложение

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

Одна из них — Kivy. Это кроссплатформенная библиотека, с помощью которой можно создавать приложения и для Android, и для iOS.

12. Упрощение анализа данных

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

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

Все эти шаги являются общими для всех моделей машинного обучения.

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

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

Итоги

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

Источник

🐍 Примеры использования Python, вдохновляющие на его изучение

Что можно сделать с помощью питона

Сергей Кравченко

Что можно сделать с помощью питона

Преимущества

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

Научные вычисления и анализ данных

Научные библиотеки

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

Некоторые из наиболее полезных пакетов Python для научных вычислений:

Netflix

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

FreeCAD

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

Что можно сделать с помощью питонаЭкран FreeCAD версии 0.19

Из консоли Python или пользовательских скриптов можно выполнять во FreeCAD довольно сложные операции :

Машинное обучение

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

Skyscanner

Что можно сделать с помощью питонаПанель управления Skyscanner

AiCure

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

Что можно сделать с помощью питона

Генеративный предварительно обученный трансформатор (GPT-2) – это искусственный интеллект с открытым исходным кодом, созданный компанией OpenAI. GPT-2 переводит и резюмирует текст, отвечает на вопросы и генерирует текст для вывода. Проще говоря, это нейросеть, которая умеет работать с естественным языком, полностью написанная на Python.

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

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

Google

Google поддерживает Python почти с самого начала: «Python там, где мы можем, C ++, где должны». Это означает, что C ++ используется только там, где нужен императивный контроль памяти и требуется низкая задержка.

Instagram

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

Визуальные эффекты и gamedev

В Python доступен целый арсенал инструментов и библиотек для разработки игр и визуальных эффектов. С его помощью были созданы, например, Battlefield 2, World of Tanks и Civilization-IV.

Blender

Blender – сложный инструмент для создания трехмерных графических моделей. Используя встроенный интерпретатор Python, в нем можно создавать 3D-игры. Blender поддерживает запись скриптов Python для скульптурных работ с помощью сетки, а также сценарии для создания пользовательских инструментов, прототипирования, игровой логики, импорта/экспорта из других форматов и автоматизации задач. Это позволяет интегрировать с приложением внешние механизмы рендеринга. Выражения Python также можно писать непосредственно в поля ввода чисел.

DeepFaceLab

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

Заключение

Это далеко не полный список отраслей и примеров применения Python. Можно, например, вспомнить з наменитый BitTorrent, первая реализация которого была написана именно на Python, а также множество других проектов. Мы надеемся, что эта статья даст читателям некоторое представление о возможностях одного из самых популярных языков программирования. В его изучении всегда помогут статьи «Библиотеки программиста». Удачи!

На Python создают прикладные приложения, пишут тесты и бэкенд веб-приложений, автоматизируют задачи в системном администрировании, его используют в нейронных сетях и анализе больших данных. Язык можно изучить самостоятельно, но на это придется потратить немало времени. Если вы хотите быстро понять основы программирования на Python, обратите внимание на онлайн-курс «Библиотеки программиста». За 30 уроков (15 теоретических и 15 практических занятий) под руководством практикующих экспертов вы не только изучите основы синтаксиса, но и освоите две интегрированные среды разработки (PyCharm и Jupyter Notebook), работу со словарями, парсинг веб-страниц, создание ботов для Telegram и Instagram, тестирование кода и даже анализ данных. Чтобы процесс обучения стал более интересным и комфортным, студенты получат от нас обратную связь. Кураторы и преподаватели курса ответят на все вопросы по теме лекций и практических занятий.

Источник

Где перспективно и адекватно использовать Python

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

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

Что ты можешь сделать на Питоне

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

Микроконтроллеры (весьма сомнительно)

Хотя Андрей Власовских на прошедшем PYCON Russia 2017 в своей фирменной манере с энтузиазмом рассказывал о том, как программировать микроконтроллеры на таком инструменте, как MicroPython, а Кирилл Борисов даже предлагал изучить некоторую зарубежную литературу, ситуация в общем никакая.

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

Девопс (адекватно)

Анализ рынка показывает, что примерно треть всех вакансий, где упоминается Python, относятся к сфере DevOpsa. Однако Python идет не основным инструментом, а той технологией, которую знать желательно. Это связано с тем, что Python практичности полностью сместил Perl для Linux, и неплохо так подвинул Bash в области написания крупных скрипов и более крупных серверных компонентов. Также к этому добавляется то, что интерфейс многих тулзов принимает Python в качестве языка сценариев.

Если вы хотите развиваться в сфере Девопса, то знание Питон вам будет большим плюсом, все остальные проходят эту сферу стороной.

Что касается коммерческой перспективы (стартапа) данного направления, то сложно представить человека, который бы смог написать и монетизировать какой-то инструмент, не имея опыта 5+ лет в области девопса.

Тестирование (адекватно)

Хотя главным инструментом автоматизации тестирования является кровавая Java, которая имеет огромный набор фреймворков и готовых решений, порой небольшие компании используют Python для полноценного тестирования, либо написания сценариев для тулзов, типа Яндекс.Танк с его BFG.

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

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

Desktop development (сомнительно)

В настоящий момент язык Python имеет 5 кросc-платформенных инструментов, которые позволяют писать «полноценные» приложения под Windows/Linux/Mac

Поэтому можно с уверенностью сказать, что писать коммерческий Desktop на питон – это весьма сомнительная затея, и компании этим редко занимаются (либо переписывают при первой же возможности, как это сделал DropBox).

Что касается внутренних инструментов, то использование небольших GUI-приложений применяется, но искать целенаправленно Desktop Python разработчиков не будут.

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

Mobile Development (весьма сомнительно)

Все плохо, в качестве pet проектов можно использовать Kivy, для реальной разработки весьма сомнительно, вакансий на Kivy нет.

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

Машинное обучение и Data science (адекватно и перспективно)

Это одна из самых хайповы областей современного IT-мира, где используется Python в качестве инструмента апробации. Python имеет ряд удобных библиотек машинного обучения и научных расчетов: Pandas, NumPy, SciPy, Scikit-Learn, которые позволяют достаточно быстро построить рабочие модели. И они на самом деле неплохо работают.

Что касается использования, то Python используется в качестве инструмента апробации, либо на небольших задачах. Если проект большой, то обычно модель пишут на Java/Scala/C++, а специалист по обучению уже выступает в качестве консультанта/аналитика.

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

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

Тем, кто хочет быстренько пощупать данное направление, советую прочитать книгу: «Vvedenie_v_mashinnoe_obuchenie_s_pomoschyu_Python_-_A_Myuller_S_Gvido_2017» — есть на торрентах, читается быстро, представление дает хорошее.

Веб-скрапинг (возможно, но сомнительно)

Питон имеет три вещи, которые делают его весьма эффективными в области веб-скраппинга, бибиотеку Requests, beautifulsoup и АПИ для Selenium. Если сюда подключиться библиотеки для компьютерного зрения и Машинное обучение, то получаются весьма эффективные инструменты.

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

Область интересная, но денег в ней мало.

Компьютерное зрение (сомнительно)

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

GameDev (сомнительно)

Практически в каждом обсуждении разработки игры на Python приводят в качестве примера eve online и WarGaming. Однако в первом случае используется stateless python, а во втором случае все ограничивается языком написания сценариев.

Что же касается реального использования, то у вас появляется три движка Kivy, PyGame, Panda3D, если первые два больше подходят для пет-проектов, то третий реально использовался на боевых проектах неплохого качества, правда эти проекты были 2004 года. Что как бы намекает, что использование проверенных движков на других языках типа Unity или Game Maker выглядит более убедительно.

Однако незаметно сюда крадется движок Ren’Py, который внезапно стал лучшим движков для написания визуальных романов (страдальческих историй для девочек), которые неплохо окупаются даже в рамках РФ. Серия «7 демонологов Петра Великого», тому доказательство.

Вакансий в GameDev для питона естественно нет, но деньги на «стартапе» поднять можно при должной сноровке. Но надежней взять другой язык и проверенные движки.

Веб-разработка (адекватно и перспективно)

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

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

Выводы об использовании питона

1) Что касается сферы девопса и тестирования, то Питон является ключевым инструментом профессии, который обязателен для каждого адекватного специалиста. Питон в данном случае не учат, к нему приходят по необходимости.

2) Наиболее перспективными выглядят сферы веб-разработки и машинного обучения (аналитики), которые явно выделяют питон на фоне его конкурентов в виде PHP и Ruby. И если вы хотите изучить питон, то вам желательно сосредоточится именно на этих сферах и не тратить свое время на что-то другое. Под это есть вакансии, на этом можно построить стартап.

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

Источник

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

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