Обновить
567.76

Python *

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

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

Drag-and-Drop на Python+OpenCV

Время на прочтение5 мин
Охват и читатели9.1K

В данной статье расскажу про простой Drag-and-Drop на Python+OpenCV.

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

Читать далее

Визуализация данных GeoJSON с использованием GeoPandas и Python

Время на прочтение3 мин
Охват и читатели17K

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

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

Читать далее

Лучшие книги по Python 2021-2022 года: для новичков и профи

Время на прочтение6 мин
Охват и читатели254K

Привет, Хабр! Поговорим о книгах?

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

И да, в IT-команде Сбера много книголюбов с самыми разными предпочтениями. А поскольку мы на Хабре, то поговорим сегодня о технической литературе. Точнее, о Python и лучших книгах по этому языку для профи, программистов среднего уровня и начинающих. Подборка  ― уже под катом.

Читать далее

История о том, как Python помог купить мебель в ИКЕА

Время на прочтение9 мин
Охват и читатели28K

5-го июля 2022 года стартовала масштабная онлайн распродажа в интернет-магазине мебели ИКЕА по причине ухода компании с российского рынка. В связи с этим началось несравнимое ни с чем по своим масштабам паломничество покупателей к сайту магазина. Шведско-нидерландский идол не выдержал такого натиска. Разработчикам ИКЕИ пришлось создать электронную очередь на сайте, чтобы распределить нагрузку. Как бы это парадоксально не звучало, этим шведско-нидерландское божество создало "ад" для рядового покупателя. Ему пришлось выстаивать часами/днями в очереди, постоянно обновлять страницу в надежде увидеть на сайте жёлтое кресло, а не пугающее объявление. Я был в их числе, но спустя сутки решил делегировать эту задачу своим союзникам - Python и Telegram-боту.

Нажимаем кнопку "ЧИТАТЬ ДАЛЕЕ" и смотрим

Поиск объектов на видео с помощью Python

Время на прочтение5 мин
Охват и читатели37K

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

Полный код и все исходники можно найти на моем Github.

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

Читать далее

Часть 3. Распознаем время на видеозаписях матчей Dota 2 с помощью трансформеров

Время на прочтение6 мин
Охват и читатели7.1K

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

Читать далее

«Вам будут писать: это отстой!»: Андрей Власовских о плюсах и минусах open source

Время на прочтение8 мин
Охват и читатели4.1K

Сделать вклад в развитие сообщества, прокачать скилы или сэкономить на разработке – у каждого есть свой мотив, чтобы участвовать в open source проектах. Мы поговорили с Андреем Власовских, участником программного комитета Pycon Russia и одним из фанатов открытого кода, как войти в open source и как добиться в нем успеха (и в чем этот успех можно измерить). Ну и немножко про Python, конечно. 

Читать далее

Языковая модель GPT-3 умеет объяснять код — рассказываем, как это можно использовать

Время на прочтение8 мин
Охват и читатели12K

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

На этот вопрос в своей новой статье отвечает британский разработчик Саймон Уиллисон* — директор по архитектуре Eventbrite и один из создателей веб-фреймворка Django. Среди различных вариантов применения языковой модели GPT-3 Уиллисон особенно подчеркивает ее способность объяснять, что делает код. По словам специалиста, в этом GPT-3 поразительно эффективна, поскольку явно обучалась на огромном количестве исходного кода.

Под катом — наш перевод материала, в котором автор демонстрирует недавние примеры из своей практики: объяснение кода на Python, JavaScript, SQL, а также работу в рамках GPT-3 с математическими формулами.

*Обращаем ваше внимание, что позиция автора не всегда может совпадать с мнением МойОфис.

Читать далее

Парсинг сайтов судов общей юрисдикции в России

Время на прочтение10 мин
Охват и читатели16K

История о том, как выявлять новые иски к клиенту.

Решил заменить ручной труд по конкретной задаче программой. Смотри, что из этого вышло.

Погнали

Ограничения векторизации Python как метода повышения производительности

Время на прочтение7 мин
Охват и читатели8.4K

В материале от автора Python-профайлера Sciagraph к старту курса по Fullstack-разработке на Python вспомним о пользе векторизации и преодолеем некоторые её проблемы при помощи PyPy и Numba. За подробностями приглашаем под кат.

Читать далее

Aiogram + Django — бич индустрии чат-ботов

Время на прочтение3 мин
Охват и читатели37K

Решил я тут пофрилансить для души, и увидел, что каждый третий проект по разработке чат-бота предполагает интеграцию веб-админки. В основном это касается онлайн-магазинов, где заказчик пытается сэкономить на сайте и заменить его монстрючим чат-ботом. При этом рулить проектом ему удобнее в привычной среде. Отсюда и возникает пунктик — "хочу админку". Функциональность этой штуковины обычно заканчивается на обновлении информации о товарах, назначении админов, управлении рассылками... в общем, простые манипуляции с базой, не более. Так вот, дефолтный разработчик, видя этот пункт, берет, мать ее, Django. Почему? Ну конечно, причина кроется в лени колхозить свою админку, и притащить красивую Джанговую реализацию кажется хорошей идеей. Заказчик, в свою очередь, гуглит топ веб-фреймворков и одобрительно кивает на сей перфоманс. А иногда и подливает масла в огонь, прямо в описании работы пингуя Django.

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

Читать далее

Как мы платежный шлюз тестируем

Время на прочтение10 мин
Охват и читатели9.9K

Всем привет! Сегодня мы поговорим об интеграционном тестировании платежного шлюза, но перед этим расскажу немного про нашу команду и наш проект. Мы (ContactPay) — самостоятельный финтех-стартап внутри QIWI, строим высокопроизводительный отказоустойчивый платежный шлюз и соответствуем стандартам безопасности PCI DSS. 

Как платежный шлюз мы интегрированы со множеством внешних API, это могут быть и платежные системы, и сторонние сервисы мониторинга, антифрода, KYC (know your customer) и так далее. 

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

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

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

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

Читать далее

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

Курс начинающего бэкендера в Metaclass: интервью со студентом 7-го потока

Время на прочтение4 мин
Охват и читатели2.5K

8 августа начинается новый, девятый поток нашей школы Metaclass по курсам frontend и backend для начинающих.

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

Читать далее

PyWinAuto + Maya 3D — записки начинающего автоматизатора

Время на прочтение6 мин
Охват и читатели5.1K

Почему важно узнавать подробности до старта работы

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

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

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

Превращение месяцев в недели — тут.

Поиск объектов на фото с помощью Python

Время на прочтение5 мин
Охват и читатели58K

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

Полный код и все исходники можно найти на моем Github.

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

Читать далее

Выбираемся из лабиринта при помощи алгоритма «поиск в ширину» (BFS) на Python

Время на прочтение8 мин
Охват и читатели24K

Учимся использовать и реализовывать на Python алгоритм поиска в ширину (BFS) для решения реальных задач.

Давайте поговорим о популярном алгоритме, который называется «Поиск в ширину» (BFS). Затем реализуем этот алгоритм, чтобы найти решение для реальной задачи: как выбраться из лабиринта.

Алгоритмы поиска применяются для решения таких задач, которые можно смоделировать как графы. Каждый узел графа – это экземпляр задачи. Каждый поисковый алгоритм начинается с узла (исходный экземпляр – состояние) и наращивает вслед за этим узлом новые (то есть, новые экземпляры задачи), решая задачу допустимыми способами. Этот процесс останавливается, как только алгоритм находит решение (успех – конечное состояние) или не может создать ни одного нового узла (провал). Среди самых популярных алгоритмов поиска – поиск в глубину (DFS), поиск в ширину (BFS), жадный алгоритм, поиск по критерию стоимости (UCS), A*-поиск, т.д. В этой статье речь пойдет о поиске в ширину.

Читать далее

Компонентные тесты в собственном соку

Время на прочтение9 мин
Охват и читатели3.1K

Всем привет! Я QA Engineer в Scalable Solutions. Наша команда отвечает за работу сердца биржи – биржевого ядра, которое процессит регистрацию, сведение торговых заявок, проведение различных проверок и выполняет ряд других важных операций. Мы уже писали про специфику тестирования высоконагруженного бэкенда в финтехе, но сегодня я хочу рассказать, какое место в нашем процессе занимают компонентные тесты, и как мы их готовим.

Читать далее

Python-скрипт для поиска совпадений в текстовых файлах. Графический. Для Inkscape

Время на прочтение4 мин
Охват и читатели9.1K

Сравниваем два текстовых файла средствами графического редактора Inkscape

Читать далее

Как установить лицензионную защиту кода на Python и обезопасить данные с помощью HASP?

Время на прочтение6 мин
Охват и читатели14K

Всем привет, я Вячеслав Жуйко – Lead команды разработки Audiogram в MTS AI.

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

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

Читать далее

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