Image

Наука о данных: от школы до работы, часть V

Как профилировать свой проект Python

Делиться

7d433a0a61ef30f03bce112f142041bc

Заставьте его работать, затем сделайте его красивым, затем, если вам действительно, действительно нужно, сделайте его быстрым. В 90 процентах случаев, если вы сделаете его красивым, он уже будет быстрым. Так что, действительно, просто сделайте его красивым! (Источник)

— Джо Армстронг (соавторы языка программирования Erlang).

Это последняя статья о Python из серии «Наука о данных: от школы до работы». С самого начала вы узнали, как управлять своим проектом Python с помощью UV, как писать чистый код, используя принципы PEP и SOLID, как обрабатывать ошибки и использовать loguru для логирования своего кода, а также как писать тесты.

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

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

Сегодня в Python появилось так много профайлеров, что профайлер по умолчанию в Pycharm называется yappi, что означает «еще один профайлер Python».

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

Источник: towardsdatascience.com

✅ Найденные теги: наука, новости
Каталог бесплатных опенсорс-решений, которые можно развернуть локально и забыть о подписках

галерея

Фото сгенерированных лиц: исследование показывает, что люди не могут отличить настоящие лица от сгенерированных
Нейросети построили капитализм за трое суток: 100 агентов Claude заперли…
Скетч: цифровой осьминог и виртуальный мир внутри компьютера с человечком.
Сцена с жестами пальцами, где один жест символизирует "VPN", а другой "KHP".
‼️Paramount купила Warner Bros. Discovery — сумма сделки составила безумные…
Скриншот репозитория GitHub "Claude Scientific Skills" AI для научных исследований.
Структура эффективного запроса Claude с элементами задачи, контекста и референса.
Эскиз и готовая веб-страница платформы для AI-дизайна в современном темном режиме.
ideipro logotyp
Image Not Found
Звёздное небо с галактиками и туманностями, космос, Вселенная, астрофотография.

Система оповещения обсерватории Рубина отправила 800 000 сигналов в первую ночь наблюдений.

Астрономы будут получать оповещения о небесных явлениях в течение нескольких минут после их обнаружения. Теренс О'Брайен, редактор раздела «Выходные». Публикации этого автора будут добавляться в вашу ежедневную рассылку по электронной почте и в ленту новостей на главной…

Мар 2, 2026
Женщина с длинными тёмными волосами в синем свете, нейтральный фон.

Расследование в отношении 61-фунтовой машины, которая «пожирает» пластик и выплевывает кирпичи.

Обзор компактного пресса для мягкого пластика Clear Drop — и что будет дальше. Шон Холлистер, старший редактор Публикации этого автора будут добавляться в вашу ежедневную рассылку по электронной почте и в ленту новостей на главной странице вашего…

Мар 2, 2026
Черный углеродное волокно с текстурой плетения, отражающий свет.

Материал будущего: как работает «бессмертный» композит

Учёные из Университета штата Северная Каролина представили композит нового поколения, способный самостоятельно восстанавливаться после серьёзных повреждений.  Речь идёт о модифицированном армированном волокном полимере (FRP), который не просто сохраняет прочность при малом весе, но и способен «залечивать» внутренние…

Мар 2, 2026
Круглый экран с изображением замка и горы, рядом электронная плата.

Круглый дисплей Waveshare для креативных проектов

Круглый 7-дюймовый сенсорный дисплей от Waveshare создан для разработчиков и дизайнеров, которым нужен нестандартный экран.  Это IPS-панель с разрешением 1 080×1 080 пикселей, поддержкой 10-точечного ёмкостного сенсора, оптической склейкой и защитным закалённым стеклом, выполненная в круглом форм-факторе.…

Мар 2, 2026

Впишите свой почтовый адрес и мы будем присылать вам на почту самые свежие новости в числе самых первых