Easyvenv

Что такое venv и virtualenv?

1Постановка

Разберём, что от вас хотят в этом вопросе и как к нему подступиться на собеседовании.

2Решение

venv — встроенный модуль (Python 3.3+) для создания виртуальных окружений. Изолирует зависимости проекта.

# Создать виртуальное окружение
python -m venv .venv

# Активация
# Windows:
.venv\Scripts\activate
# Unix:
source .venv/bin/activate

# Теперь pip install ставит в .venv, не глобально
pip install requests
deactivate   # выйти
  • virtualenv (3rd party) — быстрее, больше возможностей (можно выбирать Python version);
  • poetry, hatch, pdm — управляют зависимостями + окружениями;
  • pyenv — установка нескольких Python versions;
  • uv (Astral) — очень быстрый pip/installer (Rust-based);
  • conda — научные вычисления, не-python dependencies;
  • Без venv — конфликт версий между проектами. Всегда venv для проекта.

3Как отвечать

  • Сначала уточните условия и ограничения, покажите аналитическое мышление.
  • Рассуждайте вслух — интервьюеру важен ход мысли, а не только финальный ответ.
  • Оцените сложность по времени и памяти (Big-O), если это алгоритмический вопрос.
💡

На реальном собеседовании Alffert подскажет развёрнутый ответ в реальном времени.