Обновить
643.57

Python *

Высокоуровневый язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Python через 10 лет: Гонка за производительностью или закат эпохи?

Уровень сложностиСложный
Время на прочтение12 мин
Количество просмотров11K

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

Читать далее

Собираем ANPR-систему на Python: от YOLOv8 и кастомного OCR до INT8-квантизации

Время на прочтение13 мин
Количество просмотров5.2K

Привет, Хабр!

Распознавание автомобильных номеров (ANPR) — задача не новая. Существует множество коммерческих решений и open-source библиотек. Но что, если стандартные инструменты не не подходят? А что, если нам нужна система, которая будет молниеносно работать на обычном CPU, без дорогих видеокарт?

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

Читать далее

ИИ-помощники для Python: как выбрать между чат-песочницей, IDE-ассистентом, агентами и open-source

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров3.6K

В 2025-м помощники для Python распались на 4 класса: онлайн-чаты с изолированной песочницей, IDE-плагины, автономные агенты и локальные/открытые модели. Разбираемся, что чем отличается, где уместно, сколько стоит и на что смотреть разработчикам при выборе. А так же примеры кода.

Читать далее

Ставим задачи в CRM автоматически по итогам звонков

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров1K

Привет, Хабр! Автоматизация рутинных действий в CRM остаётся одной из ключевых задач для кол-центров, отделов продаж и поддержки. Менеджеры берут на себя обязательства во время звонков — «пришлю предложение», «перезвоню завтра», «уточню по доставке», — но не всегда фиксируют их в системе. В результате теряются сделки и снижается качество сервиса.

В этом материале мы покажем, как на базе звонков МТС Exolve, нейросети GigaChat и CRM Битрикс24 автоматически извлекать такие договорённости с клиентами из звонков и превращать их в задачи, создавая автоматизированный сценарий.

Читать далее

Проверь себя: 10 практических задач на Python для новичков. Часть 1

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров3.2K

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

Читать далее

Enterprise мониторинг с нуля: Prometheus + Grafana для FastAPI приложения

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров6.2K

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

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

Читать далее

10 вопросов на собеседовании Junior Python-разработчика. Часть 1

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров9.9K

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

Читать далее

Парсинг HH.ru: от /vacancies до асинхронных очередей и боли с ConversationHandler'ами

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров916

Привет, Хабр.

Думаю, у каждого, кто искал работу, есть этот "любимый" запрос на hh. Вбиваешь "Python Developer", ставишь фильтр "нет опыта", а тебе вываливается 500 вакансий "Senior Analyst", где в требованиях "базовое знание SQL, Python будет плюсом".

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

Я решил, что хватит. Пора автоматизировать рутину. Казалось бы, 30-минутная задача: дернул API, отфильтровал, откликнулся. Как же я ошибался. Сегодня расскажу, на какие грабли наступил, пока пилил «Аврору» - свой инструмент для автоматизации этого ада.

Читать далее

132 строчки на Python, которые рождают математического гипермонстра

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров16K

Наверное, все слышали хотя быв общих чертах про число Лоадера, очень большого гугологического монстра. Но если нет, то вкратце Loader's number — это одно из самых больших чисел, когда‑либо появившихся в серьёзном математическом контексте, и оно знаменито именно в сообществе гугологов.Оно было получено в 2002 году программистом Ральфом Лоудером в результате работы его программы, которая выиграла соревнование по написанию самой эффективной программы для вывода в Лямбда‑исчислении. Почему оно так знаменито и так велико? Не просто «большое», а «максимально эффективное». Программа Лоудера была настолько оптимизирована, что, по мнению многих специалистов, она достигает практического предела мощности для вычислимой функции в рамках Лямбда‑исчисления. Она создает число, которое, вероятно, является самым большим вычислимым числом, когда‑либо явно описанным с помощью столь компактной программы. Основа — лямбда‑исчисление. Это не просто алгоритм, написанный на C++ или Python. Он работает в фундаментальной системе, которая является основой функционального программирования и самой теории вычислимости,что придает числу огромную «математическую плотность». Ну и как вишенка на торте — оно превосходит других гигантов: Число Лоудера невероятно больше, чем многие другие известные «большие числа», такие как распиаренное число Грэма или даже числа, сгенерированные быстрорастущей иерархией на низких уровнях. Его мощность находится на очень высоких ординалах.

Читать далее

Моделирование стратегий маршрутизации — без формул, но с кодом

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров844

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

Sequential - последовательный индексный перебор свободных агентов от начала и до конца.
Round Robin - циклический обход с запоминанием последнего ответившего  и пропуском занятых агентов.
Longest Idle - выбор агента по максимуму времени простоя (idle_time).

Приходилось подолгу ждать ответа на звонок? Есть шанс узнать как это все там устроено.

Читать далее

Не обижайте Django

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров7.6K

Чем популярнее становится FastAPI, тем сильнее критикуют Django. И не просто критикуют. Брезгуют? Пренебрегают? Всего понемножку. Всё чаще слышу, что Django — пережиток прошлого. Любой проект на Django — устаревший мусор. Любой «джанговод» — просто не знает, что тоже устарел. Объективно ли это? Нет, не объективно. Если отвёртка плохо забивает гвозди, это не значит, что отвёртки устарели — просто это не их задача.

Читать далее

Хватит это терпеть: как я написал Telegram-бота для VPS, который не бесит

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров4.6K

Всем привет! Меня, как и многих здесь, в какой-то момент достало. Достало логиниться по SSH, чтобы проверить htop. Достало запускать Termius на телефоне, чтобы сделать sudo reboot зависшему инстансу. Достало ставить тяжелые веб-панели, которые жрут ресурсы и открывают лишний порт, только ради того, чтобы посмотреть загрузку диска.

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

Читать далее

3 инструмента, которые автоматически превращают код Python в формулы LaTeX

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров693

Команда Python for Devs подготовила перевод статьи о том, как превратить код Python в элегантные математические формулы прямо в Jupyter-ноутбуке. Если вы строите финансовые модели, алгоритмы или научные расчёты — LaTeX поможет оформить их профессионально. В статье разбираем четыре инструмента: IPython.display.Latexдля ручного рендеринга, handcalcs для пошаговых вычислений, latexify-py для автоматического преобразования функций и SymPy для символьной математики.

Читать далее

Ближайшие события

Передовые алгоритмы глубокого обучения

Время на прочтение29 мин
Количество просмотров3.5K

Привет, Хаброжители! Мы хотим поделиться с вами главой из книги «Алгоритмы машинного обучения» , которую уже можно предзаказать на нашем сайте.

В этой главе

1.Вариационные автоэнкодеры для обнаружения аномалий временных рядов

2.Сети смешанной плотности, использующие амортизированный вариационный вывод

3.Механизм внимания и трансформеры

4.Графовые нейронные сети

5. Исследования в области ML: глубокое обучение

Читать далее

Как я автоматизировал поиск работы на LinkedIn при помощи LLM

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров3.8K

Эта статья по сути является продолжением моей прошлогодней статьи, в которой я автоматизировал отклики на hh.ru. Кстати, если кому это интересно, тот проект до сих пор живой, недавно проверял :-)

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

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

Читать далее

Асинхронный Python: руководство для начинающих с практическим заданием

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров10K

Ваш Python-скрипт работает медленно. Вы запускаете его и смотрите, как он "висит", ожидая загрузки файла, ответа от API или завершения запроса к базе данных. Проблема почти всегда одна — ожидание. В программировании такие задачи называются I/O-bound (ограниченные вводом-выводом), и именно они "съедают" драгоценное время.

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

Читать далее

Книга: «Математика и архитектура глубокого обучения»

Время на прочтение3 мин
Количество просмотров11K

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

Читать далее

Делаем кастомное параллельное чтение по JDBC в Spark 3.0.1

Время на прочтение5 мин
Количество просмотров456

Привет, Хабр! Мы — команда DATA ОАТС в билайн. В этой статье расскажем о кейсе, когда стандартный Spark JDBC не справился с параллельным чтением огромной таблицы из ClickHouse, и мы написали свой «мини-движок». Под катом — разбор ограничений, схема с пулом потоков на экзекуторах и опыт, который может пригодиться не только для ClickHouse.

Читать далее

Разбираемся со звёздочками: понятное руководство по *args и **kwargs для начинающих

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров5.3K

Многие начинающие разработчики обходят *args и **kwargs стороной, считая их чем-то необязательным или слишком сложным. Но на самом деле, понимание этого механизма — это качественный скачок в вашем умении писать чистый, масштабируемый и по-настоящему "пайтонический" код.

Читать далее

Шахматы, которые вас удивят: Полный гайд по созданию игры с туманом войны на Python

Уровень сложностиПростой
Время на прочтение22 мин
Количество просмотров4.4K

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

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

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

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

Читать далее

Вклад авторов