VS Code: интерпретатор и рабочий процесс
Расширение установлено — но VS Code ещё не знает, какой Python использовать для вашего конкретного проекта. Разберём, как это указать и как это устроено.
Установленное расширение Python ещё не знает, какой именно интерпретатор использовать для вашего проекта — особенно если на компьютере их несколько (системный, с python.org, а скоро ещё и виртуальные окружения). Это нужно указать явно — один раз на проект.
Выбор интерпретатора
Откройте папку проекта в VS Code, затем откройте любой файл .py.
В правом нижнем углу окна появится надпись с текущей выбранной версией Python — нажмите на
неё (или откройте палитру команд Ctrl+Shift+P / Cmd+Shift+P
и наберите «Python: Select Interpreter»).
Появится список всех интерпретаторов, которые VS Code нашёл на компьютере — с полными путями к каждому. Выберите нужный.
sys.executable (раздел 2.6), если запустить файл через VS Code. Откройте встроенный терминал VS Code (Ctrl+`) и сравните.USER-настройки и WORKSPACE-настройки
У VS Code есть два уровня настроек с одинаковыми именами полей, но разным охватом:
- User settings — применяются ко всем проектам, которые вы открываете на этом компьютере;
- Workspace settings — применяются только к текущей открытой папке
(проекту) и хранятся в файле
.vscode/settings.jsonвнутри самого проекта.
Когда вы выбираете интерпретатор через «Select Interpreter», выбор привязывается именно к
этому проекту, а не «навсегда» ко всему компьютеру — у разных проектов на компьютере вполне
может быть разный Python. Технически расширение Python Environments (мы
ставили его вместе с расширением Python в разделе 2.7) хранит это назначение в
.vscode/settings.json проекта — но не как прямой путь к файлу, а
как ссылку на нужное окружение, которую расширение само находит заново при каждом
открытии проекта:
{
"python-envs.pythonProjects": [
{ "path": ".", "envManager": "ms-python.python:venv" }
]
}
python.defaultInterpreterPath — это не запись о вашем выборе, а запасной вариант: расширение читает её только тогда, когда для проекта ещё не назначено никакое окружение никаким другим способом. Ручной выбор через «Select Interpreter» её не создаёт и не изменяет — поэтому не удивляйтесь, если не найдёте эту строку в своём settings.json даже после того, как выбрали интерпретатор.Встроенный терминал
Терминал внутри VS Code (Ctrl+`) — это тот же самый shell, что
и обычный терминал операционной системы (раздел 2.2), просто открытый прямо внутри редактора,
в папке проекта. Когда у проекта выбрано виртуальное окружение, VS Code обычно
автоматически активирует его в новом встроенном терминале — вы увидите
(.venv) перед приглашением командной строки (подробнее в разделе
2.11).
Запуск и отладка файла
Кнопка ▷ («Run Python File») в правом верхнем углу запускает текущий файл именно тем интерпретатором, который выбран для проекта. Кнопка отладки (значок с жуком) делает то же самое, но позволяет ставить точки останова (breakpoints) — кликом слева от номера строки — и останавливать выполнение построчно, чтобы увидеть текущие значения переменных.
sys.executable (раздел 2.6).