Что программируют на Python? Реальное практическое использование с примерами библиотек

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

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

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

Python — медленный?

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

Но если Python реально такой ну скажем тормознутый местами, то что же с ним

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

  • backend разработка (онлайн сервер, SQL, запросы к базе данных)
  • data science (работа с данными, ИИ, нейросети, аналитика)

Backend на Python

Бэкенд — то, что происходит на стороне сервера в мире онлайн-проектов. Чтобы заниматься разработкой backend на Python вам нужно знать еще несколько технологий: чаще всего это базовое знание html / css, SQL, протокола TCP/IP и других интернет-фишек, уметь работать с базами данных через MySQL, PostgreSQL и тп; пригодятся фреймворки Flask, Django и проч.:

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

Python в Data science

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

Почему все учат Python?

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

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

Напишите, что вы программируете на Python? В каком направлении хотите развиваться?