python-performance-optimization
Оптимизация производительности и профилирование кода на Python
Также доступно от: ActiveInferenceInstitute,wshobson
Медленный код на Python тратит ресурсы впустую и разочаровывает пользователей. Этот навык предоставляет систематические методы профилирования и оптимизации для выявления узких мест и улучшения производительности.
Скачать ZIP навыка
Загрузить в Claude
Перейдите в Settings → Capabilities → Skills → Upload skill
Включите и начните использовать
Протестировать
Использование «python-performance-optimization». Профилирование функции, обрабатывающей большой список
Ожидаемый результат:
Отчёт о времени показывает, что process_data() потребовала 2,3 с (85% от общего времени), при этом 90% потрачено на вложенные циклы. Рекомендация: Заменить алгоритм O(n²) на поиск по словарю для производительности O(n).
Использование «python-performance-optimization». Анализ паттерна использования памяти
Ожидаемый результат:
Профиль памяти показывает выделение 500 МБ в словаре data_cache, который растёт без ограничений. Рекомендация: Реализовать LRU-кэш с параметром maxsize или использовать WeakValueDictionary для автоматической очистки.
Аудит безопасности
БезопасноStatic analysis flagged 68 patterns but all are false positives. The backtick detections are markdown code formatting, not shell execution. Network and URL findings are educational examples using test endpoints. SQLite references are documentation examples. System reconnaissance patterns are legitimate profiling tool demonstrations. This is a documentation-only skill with no executable code or security risks.
Оценка качества
Что вы можете построить
Отладка медленных API-эндпоинтов
Профилирование веб-приложения для выявления медленных запросов к базе данных и оптимизации времени отклика.
Оптимизация конвейеров обработки данных
Анализ использования памяти и времени выполнения ETL-рабочих процессов для снижения потребления ресурсов.
Повышение эффективности алгоритмов
Профилирование вычислительного кода для выявления неэффективных паттернов и применения соответствующих оптимизаций.
Попробуйте эти промпты
Помогите мне профилировать эту функцию Python для выявления узких мест производительности. Вот мой код: [вставить код]. Покажите, как использовать cProfile для измерения времени выполнения и поиска медленных функций.
Моё приложение на Python со временем использует всё больше памяти. Помогите использовать memory_profiler и tracemalloc для выявления утечек памяти в этом коде: [вставить код]. Объясните, что означает вывод.
Я профилировал свой код и нашёл следующие узкие места: [вставить вывод профилирования]. Рекомендуйте конкретные методы оптимизации и покажите примеры кода до/после для каждого предложения.
Проведите меня через настройку py-spy для профилирования работающего production-сервиса Python без его остановки. Объясните, как создавать flame graphs и интерпретировать результаты для поиска горячих путей.
Лучшие практики
- Всегда профилируйте перед оптимизацией, чтобы выявить реальные узкие места, а не предполагаемые
- Используйте подходящие структуры данных: словари для поиска, множества для проверки принадлежности, генераторы для больших последовательностей
- Кэшируйте дорогие вычисления с помощью functools.lru_cache и объединяйте I/O-операции в пакеты для снижения накладных расходов системных вызовов
Избегать
- Оптимизация кода без данных профилирования приводит к потере усилий на не-узких местах
- Конкатенация строк в циклах с помощью оператора + вместо join() вызывает квадратичную временную сложность
- Загрузка целых файлов или наборов данных в память, когда достаточно обработки на основе итераторов
Часто задаваемые вопросы
Какой профилировщик следует использовать первым?
Как профилировать production-код без влияния на производительность?
Почему мой оптимизированный код медленнее оригинального?
Когда следует использовать multiprocessing вместо threading?
Как снизить использование памяти в приложении на Python?
Всегда ли NumPy быстрее чистого Python?
Сведения для разработчиков
Автор
sickn33Лицензия
MIT
Репозиторий
https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/python-performance-optimizationСсылка
main
Структура файлов