Python: Диагностика виртуального окружения

Диагностика виртуального окружения

Представь, что ты пишешь вспомогательный скрипт для команды: он читает лог-вывод команд диагностики виртуального окружения и определяет, всё ли настроено правильно.

Что уже дано

Проверяющая система ничего не создаёт заранее. Твой скрипт получает данные через stdin и должен напечатать результат в stdout.

Что нужно сделать

Напиши программу, которая:

  1. Читает из stdin несколько строк — каждая строка представляет вывод одной диагностической команды.
  2. Для каждой строки определяет, является ли путь локальным (содержит .venv как компонент пути) или системным (не содержит .venv).
  3. Выводит итоговый вердикт:
  • Если все строки содержат .venv — выведи OK: виртуальное окружение активно.
  • Если хотя бы одна строка не содержит .venv — выведи WARN: обнаружен системный интерпретатор и на следующих строках выведи все «подозрительные» строки в том же порядке, в котором они встретились во вводе (каждую с префиксом -).

Ввод и вывод

Программа читает stdin и пишет в stdout.

Формат ввода

Первая строка — целое число n (1 ≤ n ≤ 20): количество диагностических строк.
Следующие n строк — произвольные непустые строки, имитирующие вывод команд which python, which pip, where python и т. п.

Формат вывода

Если все строки содержат .venv:

OK: виртуальное окружение активно

Если хотя бы одна строка не содержит .venv:

WARN: обнаружен системный интерпретатор
 - <подозрительная строка 1>
 - <подозрительная строка 2>
...

Пример

Ввод
3
/home/user/project/.venv/bin/python
/home/user/project/.venv/bin/pip
/home/user/project/.venv/bin/python3
Вывод
OK: виртуальное окружение активно
РешениеPython

Без регистрации. Гостевая проверка не сохраняет прогресс. Для сохранения перейдите к уроку.

Отправьте решение, чтобы увидеть результаты тестов.

Связанные задачи