Встречается на 1% собеседований по Python
Какие делал оптимизации производительности
- Профилирование кода с помощью
cProfileилиline_profilerдля выявления узких мест. - Оптимизация алгоритмов – замена O(n²) на O(n log n) или O(n) где возможно.
- Использование встроенных функций (
map,filter,itertools) вместо циклов. - Кеширование через
functools.lru_cacheдля рекурсивных/тяжелых функций. - Векторизация операций с
numpyвместо чистого Python.
Пример:
python
# Было (медленно)
result = []
for x in range(10_000):
result.append(x * 2)
# Стало (быстрее)
result = [x * 2 for x in range(10_000)] # или numpy.arange(10_000) * 2- JIT-компиляция через
numbaдля математических операций. - Работа с памятью – генераторы (
yield) для больших данных. - Асинхронность (
asyncio) для I/O-bound задач. - Выбор структур данных –
setдля поиска,dequeдля FIFO. - Сборщик мусора – ручное управление (
gc.disable()в критичных местах).
Для CPU-bound задач – параллелизм (multiprocessing), для I/O – асинхронность.

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