Код Visual Studio не видит Python

Обновлено: 21.11.2024

Мы рады сообщить, что выпуск расширения Python для Visual Studio Code от сентября 2021 г. теперь доступен. Вы можете загрузить расширение Python из Marketplace или установить его непосредственно из галереи расширений в Visual Studio Code. Если у вас уже установлено расширение Python, вы также можете получить последнее обновление, перезапустив Visual Studio Code. Вы можете узнать больше о поддержке Python в Visual Studio Code в документации.

В этом релизе мы закрыли 80 проблем, в том числе:

  • Удобные возможности редактирования Python в браузере.
  • Обновленный интерфейс тестирования.
  • Новая кнопка для запуска и отладки файлов в редакторе.
  • Информация об окончании срока службы Microsoft Python Language Server, а также о поддержке Python 2.7 IntelliSense.

Если вам интересно, вы можете проверить полный список улучшений в нашем журнале изменений.

Мы рады сообщить, что начиная с этого выпуска вы можете наслаждаться эффективными возможностями редактирования Pylance в браузере через github.dev. Если вы не знакомы с github.dev, вы можете перейти к любому репозиторию, запросу на вытягивание или файлу на GitHub и нажать «.» на клавиатуре (или изменить URL-адрес на github.dev), чтобы попробовать!

Мы добавили поддержку основных функций редактирования, которые могут вам понадобиться при изучении новой кодовой базы или внесении незначительных изменений в ваш код Python. Эти функции включают в себя:

Если хотите, вы можете посмотреть демонстрацию Дэна Тейлора в подкасте Python Bytes об этом новом интерфейсе!

Мы рады, что вы попробуете этот новый опыт, и приветствуем любые отзывы о системе отслеживания проблем Pylance.

Хотя запуск кода Python в браузере пока не поддерживается, вы можете сделать это в блокноте Jupyter с расширением vscode-pyolite (в предварительной версии), созданным одним из членов нашей команды!

Мы рады сообщить, что мы изменили внешний вид наших функций тестирования Python, используя встроенный обозреватель тестов в VS Code. Теперь вы можете наслаждаться более стабильным пользовательским интерфейсом для обнаружения тестов, навигации и отображения состояния, а также новыми функциями, такими как поиск тестов, запуск выбранных тестов, повторный запуск последнего выполненного теста и многое другое. Только благодаря этому изменению мы закрыли 55 проблем в нашем репозитории GitHub!

Тестовая конфигурация

После активации расширения Python вы увидите обозреватель тестов на панели активности. Если вы не настроили функции тестирования, вы увидите возможность сделать это в окне приветствия:

Тестовое обнаружение

После настройки функций тестирования расширение Python попытается обнаружить тесты. Как только они будут обнаружены, вы увидите список своих тестов в обозревателе тестов:

Тесты теперь обнаруживаются автоматически по умолчанию всякий раз, когда вы добавляете, удаляете или обновляете любой файл Python в рабочей области. Вы можете отключить эту функцию, изменив параметр «python.testing.autoTestDiscoverOnSaveEnabled» на «false».

Пробная навигация

Вы можете перейти к методам тестирования или файлам через обозреватель тестов, щелкнув значок «Перейти к тесту», который отображается, когда вы наводите указатель мыши на элемент теста или щелкаете его. Но теперь вы также можете перейти к тесту в обозревателе тестов из редактора, щелкнув правой кнопкой мыши украшение желоба и выбрав «Показать в обозревателе тестов».

Запуск и отладка тестов

Несмотря на то, что мы убрали линзы кода, у вас остались дополнительные возможности запуска и отладки тестов:

Проводник тестов

Для запуска и отладки всех обнаруженных тестов достаточно навести указатель мыши на элементы тестов в обозревателе тестов и щелкнуть соответствующие значки, а также воспользоваться значками в правом верхнем углу обозревателя тестов. И теперь вы также можете запустить набор тестов, нажав Ctrl + щелкнув (или Cmd + щелкнув, если вы используете macOS) те, которые вы хотите запустить в проводнике, а затем щелкнув значок запуска для одного из тестов. в выборе:

Редактор

Несмотря на то, что мы убрали линзы кода, вы по-прежнему можете запускать и отлаживать тесты в редакторе, нажимая на украшения желоба. Вы также можете щелкнуть их правой кнопкой мыши, чтобы вместо этого отладить тесты (и вы даже можете изменить поведение по умолчанию, которое будет выполняться при нажатии на декораторы, с помощью параметра «testing.defaultGutterClickAction»).

Чтобы настроить отладчик для тестов, вы можете указать «назначение»: [«debug-test»] в файле launch.json в папке .vscode из вашей рабочей области.

Например, приведенная ниже конфигурация в файле launch.json отключает параметр justMyCode для отладки тестов:

Команды

Теперь у нас есть новые команды, которые могут быть особенно полезны при создании или изменении тестов. Мы часто хотим запустить один и тот же метод тестирования пару раз, когда мы его создаем. Чтобы сделать это проще и доступнее, вы можете использовать команду «Тест: запустить тест на курсоре», чтобы запустить метод, в котором находится курсор в редакторе (и вы даже можете добавить для него сочетание клавиш, чтобы вам было легче Сделай так!). Точно так же вы можете запустить команду «Тест: повторно запустить последний запуск», если хотите запустить единственный последний выполненный вами тест.

Поскольку мы используем новый API тестирования VS Code, некоторые из наших команд тестирования изменились. Если вы привыкли к нашим старым тестовым командам или для них настроены сочетания клавиш, вы можете обратиться к нашей документации, чтобы узнать, что представляют собой соответствующие новые команды.

Мы улучшили нашу «кнопку запуска» в редакторе, чтобы также включить файлы отладки в качестве опции. Когда вы нажимаете на значок, он запускает ваш активный файл Python в терминале по умолчанию, но вы можете щелкнуть стрелку вниз, чтобы вместо этого изменить действие для его отладки:

Вы также можете настроить действие значка отладки, создав файл launch.json и добавив «цель»: [«отладка в терминале»] в конфигурацию Python.

Например, приведенная ниже конфигурация позволяет выполнять пошаговое выполнение непользовательского кода при отладке с помощью значка отладки в редакторе:

Обратите внимание, что это будет работать только для отладки файлов с помощью значка отладки в редакторе. Это не сработает при запуске отладчика в представлении «Выполнить и отладить» или с помощью клавиши F5.

Поддержка IntelliSense для пользователей Python 2.7 происходит из версии Jedi 0.17, которая вышла более года назад и является последней версией Jedi, поддерживающей Python 2.7. С тех пор мы начали использовать (и вносить свой вклад) jedi-language-server, что ставит Jedi позади LSP. Это дало пользователям Jedi лучшую производительность, возможности рефакторинга и навигации по коду, но доступно только для Jedi 0.18.

Начиная с версии 2021.10 расширения Python, мы будем предлагать поддержку только для Jedi 0.18 и выше и больше не будем поддерживать Jedi 0.17. Мы также удалим поддержку ctags и веревки одновременно.

Вы можете посетить нашу вики-страницу, чтобы узнать больше о причинах этого и о том, что вы можете сделать, если вы все еще используете Python 2.7 в VS Code.

В выпуске за июнь 2020 г. мы объявили об инвестициях нашей команды в Pylance, новом более производительном и многофункциональном языковом сервере Python, а также о возможном прекращении поддержки нашего устаревшего языкового сервера, Microsoft Python Language Server. После этого объявления наша команда усердно работал над улучшением поддержки языкового сервера как в Pylance, так и в языковом сервере с открытым исходным кодом Jedi.

Теперь, когда Pylance поддерживает язык по умолчанию для Python для Visual Studio Code, почти все наши пользователи перешли на наш новый языковой сервер. Таким образом, срок службы Microsoft Python Language Server прекратится с ноябрьским выпуском расширения Python в Visual Studio Code. После устаревания репозиторий Microsoft Python Language Server будет помечен как заархивированный. Это по-прежнему позволит вам разветвляться и использовать кодовую базу языкового сервера, если хотите.

Если вы все еще используете этот языковой сервер (ваш параметр python.languageServer установлен на «Microsoft»), теперь вы увидите приглашение выбрать новый языковой сервер — Pylance (рекомендуется; по умолчанию) или Jedi (открытый -источник). После выбора ваш параметр python.languageServer будет соответствующим образом обновлен в вашем файле settings.json, чтобы отразить ваш выбор. Если в какой-то момент вы захотите попробовать что-то новое, вы можете сделать это, обновив настройки. Если к ноябрьскому выпуску вы еще не выбрали новый языковой сервер, ваш языковой сервер автоматически переключится на поддержку языка по умолчанию для Python в Visual Studio Code — Pylance.

Мы хотели бы поблагодарить всех пользователей Microsoft Python Language Server за их отзывы и поддержку в течение последних нескольких лет. Ваш вклад помог сформировать то, что мы считаем лучшей языковой поддержкой Python в Visual Studio Code.

Мы также внесли небольшие улучшения и исправили проблемы, о которых просили пользователи, которые должны улучшить ваш опыт работы с Python в Visual Studio Code. Вот некоторые заметные изменения:

И огромное спасибо авторам этого месяца:

Обязательно загрузите расширение Python для Visual Studio Code прямо сейчас, чтобы опробовать перечисленные выше улучшения. Если у вас возникнут какие-либо проблемы или у вас есть предложения, отправьте сообщение о проблеме на странице Python VS Code GitHub.

У меня уже много недель огромная проблема с VS Code. Однажды VS Code не удалось запустить ни один файл Python. У меня есть сообщение:

bash: C:/Users/rapha/AppData/Local/Programs/Python/Python38/python.exe: нет такого файла или каталога

Я много раз удалял Python и VS CODE, чтобы правильно добавить python 3.8 к моему пути Windows, но у меня всегда была ошибка. Есть идеи?

Большое спасибо

4 ответа 4

Перейдите к настройкам VS Code и под интерпретатором вы найдете Путь к интерпретатору, поэтому установите его на путь к вашей установке Python, перезапустите VS Code, и все будет хорошо.

Не сработало. Это действительно странно. Я переустановил Python в известной папке, я уверен, что он в ней. Я установил свой путь в коде VS, но та же проблема

Это странно. Вы пытались каждый раз просто запускать код с терминала в коде Vs? Как в python3 myfile.py

В VS Code откройте «Настройки» с помощью (Ctrl+,), затем найдите в настройках «Переводчик». Будет опция «Python: путь интерпретатора по умолчанию». Укажите расположение вашего файла python.exe. Откройте новый терминал VS с помощью (Ctrl+Shift+`), чтобы проверить команду python; вам может потребоваться перезапустить VS Code.

У меня были проблемы с тем, что VS не мог найти python, хотя я мог запускать команды python из любого терминала, открытого с моего компьютера (клавиша с логотипом Windows + cmd + Enter). Я заметил, что папка Scripts не была установлена ​​при установке python, поэтому я переустановил python и выполнил описанные выше шаги. Мне помогло.

Я установил инсайдерский код VS, и он отлично работает. Я счастлив. Это не устраняет проблему, но является отличной альтернативой.

Изменить: проблема вернулась

У меня была такая же проблема, но я нашел другое решение;

в settings.json у меня было
"python.defaultInterpreterPath": "D:\Program Files\Python310\python.exe", но даже это почему-то игнорировалось!

Итак, я посмотрел на $ENV:path в powershell, загруженном в vscode, и на $ENV:path в стандартной командной строке powershell в Windows, и они были разными!

Похоже, что если у вас открыт терминал в VSCode, он запоминает $ENV из этого терминала, даже если вы полностью перезапустите vscode или перезагрузите компьютер.

Что сработало для меня (случайно), так это закрыть все окна терминала (и, возможно, все открытые открытые окна терминала/powershell) и попробовать еще раз!

Если это по-прежнему не работает, еще раз сравните значения $ENV:Path и посмотрите, отличаются ли они по-прежнему!

Текст был успешно обновлен, но возникли следующие ошибки:

mrTsjolder прокомментировал 16 апреля 2021 г.

@karthiknadig 2020.10 — это самая последняя версия, которую я могу установить с помощью встроенного менеджера плагинов. Я установил 2021.03 из файла vsix под релизами, что привело к сообщению об ошибке

Поскольку ms-toolsai.jupyter, по-видимому, доступен только для инсайдеров VS Code, а github не предоставляет файл vsix, я не знаю, как установить это расширение, чтобы удовлетворить зависимость.

Надеюсь, это именно та информация, которую вы искали.

karrtikr прокомментировал 16 апреля 2021 г.

Чтобы установить более старую версию расширения, следуйте инструкциям в разделе "Расширения: установить определенную версию расширения" в палитре команд:

Или вы можете открыть боковую панель расширений, щелкнуть настройки расширения Python и выбрать «Установить другую версию»:

karrtikr прокомментировал 16 апреля 2021 г.

mrTsjolder прокомментировал 17 апреля 2021 г. •

Извините, если что-то непонятно, но я знаю, как устанавливать расширения с помощью встроенного магазина. Причина, по которой я сделал это жестким способом, заключается в том, что для меня на рынке нет расширения ms-toolsai.jupyter (а самая последняя версия расширения python — 2020.10 ).

Погуглив эту проблему, я обнаружил, что самая очевидная причина наличия старых версий на рынке — несовместимость зависимостей. Поэтому идея заключалась в том, чтобы установить все вручную, чтобы увидеть, почему установка не удалась. Итак, установка ms-python не удалась из-за отсутствующей зависимости ms-toolsai.jupyter , которую я даже не могу установить, так как нет релиза vsix.

Здесь указано, что расширение должно быть возможно установить, но не указано, как его установить (если оно недоступно на торговой площадке).

@karrtikr Любые идеи/предложения, как я мог бы помочь решить эту проблему?

Руководство по настройке кода Visual Studio для работы с Python.

Visual Studio Code — одна из самых популярных IDE для разработчиков. Скриншот индекса PYPL для кода VS для США выглядит следующим образом:

На диаграмме представлены только IDE, распространенные среди разработчиков Python, но они не единственные в списке.

Важные настройки для Python

После установки необходимо настроить несколько вещей, если вы хотите использовать Python в коде VS.

Расширение Python

  1. Открыть Visual Studio
  2. Нажмите кнопку расширения слева.
  3. Введите «Python», вы увидите расширение python в верхней части списка расширений, выберите его.
  4. Нажмите «Установить», она должна быть включена автоматически, если нет.

Следующее, что нам нужно настроить, это интерпретатор Python по умолчанию. Для этого нам нужен наш путь к Python.

Узнать путь к окнам

Для пользователей Windows: если вы не знаете путь, откройте командную строку, а затем:

  1. Введите python, чтобы открыть оболочку Python.
  2. Введите следующую команду, помните об отступах:

Скопируйте путь, как выделенный. У меня Python 3.9, у вас может быть по-другому.

Теперь, когда вы знаете путь, давайте настроим его в vs code.

  1. Выберите Файл > Настройки > Настройки или нажмите «Ctrl + ,».

<р>2. Выберите User > Extensions>Python > Python Path и вставьте путь, который мы скопировали ранее. Помните, что путь не завершен. Итак, добавьте «\python.exe» в конце.

Теперь в левом нижнем углу вы сможете увидеть имя интерпретатора Python, как на картинке выше >>> Python 3.9.4 64-bit

Читайте также: