Профилирование — это неотъемлемая часть любых работ по оптимизации кода или производительности программ. Любой опыт, любые знания в сфере оптимизации производительности, которые уже у вас есть, не принесут особой пользы в том случае, если вы не знаете о том, где их применить. В результате оказывается, что поиск узких мест приложений может помочь в деле решения проблем производительности, поможет сделать это быстро и приложив не слишком много усилий.
Рубрика «python» - 37
Профилирование Python-программ и анализ их производительности
2022-03-21 в 12:58, admin, рубрики: python, Блог компании Wunder Fund, высокая производительность, Клиентская оптимизация, оптимизация, профилирование, разработкаРазбираем алгоритмы компьютерной графики. Часть 3 – анимация «Пламя»
2022-03-20 в 14:22, admin, рубрики: python, Демосцена, Компьютерная анимация, ПрограммированиеРассмотрим алгоритм рисования простейшего пламени. Придуман он довольно давно и использовался в огромном количестве демо и игр. Например:
«Живые» кликабельные обои на Python’е?
2022-03-20 в 10:36, admin, рубрики: python, живые обои, изменяющиеся обои на python, кликабельные обои"Костыли и велосипеды программируем как умеем".
История появление "гениальных" идей
Гуляя по обширным мусорным завалам на моём рабочем слоте, я понял что ему чего-то не хватает. Так и пришла "гениальная" мысль украсить задний фон рабочего стола хоть каким либо образом. И конечно же я решил использовать питон - легко, сердито.
Используемые библиотеки
-
Pillow - генерировать саму картинку на обои.
-
Ctypes - понадобиться чтобы получать разрешение экрана, позиции и действий мыши.
-
Win32gui - отслеживание текущего окна.
Оптическое распознавание символов с помощью Rust и WebAssembly
2022-03-20 в 10:00, admin, рубрики: ocr, Pokemon, python, Rust, ruvds_перевод, webassembly, Блог компании RUVDS.com, машинное зрение, обработка изображенийПосле переписывания Cyberscore я захотел отправить на сайт какие-нибудь результаты. Последнее, во что я играл, это Pokémon Legends: Arceus, по которой на Cyberscore есть около 3000 таблиц результатов. Я не собирался отправлять столько рекордов вручную, поэтому начал придумывать инструмент для автоматизации этого процесса.
Эта статья посвящена двум вещам: процессу извлечения результатов из JPG с помощью Rust и встраиванию этого функционала во фронтенд Cyberscore.
Читать полностью »
Уроки компьютерного зрения на Python + OpenCV с самых азов. Часть 4
2022-03-19 в 16:36, admin, рубрики: opencv, python, Компьютерное зрениеНа прошлом уроке мы познакомились с медианной фильтрацией, кастомными фильтрами и выделением контуров. Напомню, что выделенный контур можно использовать для поиска области интересов на изображении и для нахождения различных фич. В частности, вот что можно далее сделать с контуром:
-
Выявить различные геометрические примитивы (прямые, окружности).
-
Превратить в цепочки точек и уже их отдельно анализировать.
-
Описать как граф и применять к нему алгоритмы на графах.
Продолжим изучать методы предобработки. Например, изображением можно сделать контрастным:
Читать полностью »
Разбираем алгоритмы компьютерной графики. Часть 1 — «Starfield Simulation»
2022-03-15 в 16:31, admin, рубрики: python, Демосцена, Компьютерная анимация, компьютерная графика, ПрограммированиеЭтой небольшой заметкой я хочу начать цикл статей посвященных алгоритмам компьютерной графики. Причем, не аппаратным тонкостям реализации этой самой графики, а именно алгоритмической составляющей.
Действовать буду по следующему принципу: беру какой-либо графический эффект (из демо, программы, игры – не важно) и пытаюсь реализовать этот же эффект максимально простым и понятным способом, разъясняя что, как и почему сделано именно так.
Пишем асинхронного Телеграм-бота
2022-03-15 в 11:11, admin, рубрики: asyncio, python, telegram, telegrambot, асинхронное программирование, асинхронность, Блог компании KTSПривет! Меня зовут Александр, я руководитель бэкенд-разработки в KTS.
Сегодня я покажу, как написать своего Телеграм-бота на основе asyncio и aiohttp. Мы не будем использовать ни aiogram, ни любые другие библиотеки, а напишем бота с нуля, чтобы немного познакомиться с асинхронным программированием, корутинами и некоторыми примитивами синхронизации.
Рисуем красивые трейсбеки, перехватывая исключения в Python
2022-03-14 в 12:28, admin, рубрики: python, Блог компании Wunder Fund, разработка, Разработка веб-сайтовВсе мы тратим немало времени на отладку, копаясь в логах или читая трейсбеки (traceback, отчёты о трассировке стека). Любое из этих дел может оказаться сложным и длительным. Этот материал посвящён тому, как сделать трассировку стека и работу с исключениями как можно более простыми и эффективными.
Анонимизация базы данных или как быть уверенным, что ты не нарушаешь закон “О персональных данных”
2022-03-08 в 11:10, admin, рубрики: 152-фз, django, Django REST framework, flake8, gdpr, python, анонимизация, база дынных, персональные данные, плагин, Программирование, Разработка веб-сайтов, хранение данныхВ настоящее время практически все ИТ-продукты работают с персональной информацией пользователя: ФИО, телефон, e-mail, паспортные и другие идентифицирующие данные. Для обеспечения защиты прав и свобод, человека и гражданина при обработке его персональных данных в Российской Федерации существует Федеральный закон от 27.07.2006 N 152-ФЗ “О персональных данных”.
Согласно пункту 2 статьи 5 обработка персональных данных должна ограничиваться достижением конкретных, заранее определенных и законных целей, а в Читать полностью »
Оптимизация использования памяти в Python-приложениях
2022-03-07 в 12:44, admin, рубрики: python, Блог компании Wunder Fund, Клиентская оптимизация, оптимизация, Разработка веб-сайтовПрим. Wunder Fund: мы занимаемся высокочастотной торговлей и это заставляет нас часто думать об оптимизации кода, но в основном, конечно, плюсового. В этой короткой статье описаны несколько подходов к оптимизации Python-программ по памяти. И хотя много проблем можно решить, просто докупив ещё памяти, но не все.