VS Code не может найти интерпретатор Python в WSL после последнего обновления

После последнего обновления VS Code у меня возникли проблемы с поиском интерпретатора Python. Кажется, что VS Code ищет установку Python на моем диске C, а не внутри WSL (Ubuntu).

Я попытался добавить следующее к своему пользователю settings.json, но это не сработало.

    "terminal.integrated.defaultProfile.windows": "WSL",
    "python.defaultInterpreterPath": "/usr/bin/python3.12",
    "terminal.integrated.profiles.windows": {
      "WSL": {
        "path": "C:\\WINDOWS\\System32\\wsl.exe",
        "args": []
      }
    },
    "python.venvPath": "/home/yourusername/.virtualenvs",  // Optional: if you use virtual environments
    "python.terminal.activateEnvironment": true

Есть идеи?

Вы не используете VSCode внутри WSL, не так ли? Если нет, то он вообще не должен знать о вашем диске с Ubuntu.

Tim Roberts 21.06.2024 23:23

В этом отношении Python полностью кроссплатформен, как и большинство крупных библиотек для него. Зачем вам вообще нужен WSL для проекта Python в Windows?

Mike 'Pomax' Kamermans 22.06.2024 00:17

@Mike'Pomax'Kamermans, это правда, но я уже настроил большую часть своей среды Python на WSL и в основном использую WSL для программирования, так что это было более удобно.

Jon 22.06.2024 00:37

@TimRoberts Извините, да, я использую VSCode внутри WSL (i.imgur.com/ySipw22.png)

Jon 22.06.2024 01:22

Зафиксированный! В палитре команд выберите «Подключиться к WSL в новом окне» i.imgur.com/olQgIGj.png. Кажется, я случайно запустил VSCode за пределами WSL.

Jon 22.06.2024 01:29

VSCode работает вне WSL и использует только WSL. Решение описано здесь. Вам нужен плагин.

Hermann12 22.06.2024 05:34

@ Hermann12 Hermann12 Да, у меня был плагин, проблема заключалась в том, что я работал внутри Windows вместо того, чтобы использовать VSCode внутри WSL. Исправлено сейчас :)

Jon 22.06.2024 08:37

Большую часть своей работы я выполняю в WSL, поэтому мне нравится использовать другую тему, сообщающую мне, в какой среде я нахожусь.

Aarav 23.06.2024 20:51

Привет, Джон, рад узнать, что ты нашел решение этой проблемы! Пожалуйста, рассмотрите возможность ответить на него и принять его в качестве ответа, чтобы изменить его статус на Отвечено. Видите могу ли я ответить на свой вопрос?.., Напоминаю :)

MingJie-MSFT 24.06.2024 03:46
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
9
59
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Зафиксированный! В палитре команд выбрано «Подключиться к WSL в новом окне» (CTRL+Shift+P в Windows) .

Кажется, я случайно запустил VSCode в Windows вместо WSL. @Аарав поступил правильно, сохранив в VSCode разные темы для Windows и WSL.

Спасибо за помощь!

Другие вопросы по теме