Встречается на 1% собеседований по Python
Какие знаешь инструменты для оптимизации работы кода
В Python есть несколько инструментов для оптимизации кода:
-
Профилирование – помогает найти узкие места:
cProfile– встроенный модуль для анализа времени выполнения функций.line_profiler– профилирует код построчно.
-
Оптимизация памяти:
memory_profiler– отслеживает использование памяти.- Использование
__slots__для уменьшения памяти объектов.
-
Ускорение выполнения:
numba– JIT-компиляция Python-кода.Cython– компиляция Python в C.
-
Кэширование:
functools.lru_cache– мемоизация результатов функций.
Пример с lru_cache:
python
from functools import lru_cache
@lru_cache(maxsize=None)
def fib(n):
if n < 2:
return n
return fib(n-1) + fib(n-2)Это ускоряет рекурсивный расчет чисел Фибоначчи.
Для сложных задач можно использовать multiprocessing или asyncio для параллелизма.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы