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

Это небольшой выпуск, в котором мы закрыли 35 проблем, в том числе улучшили Python Language Server, отладку ячеек Jupyter Notebook, а также обнаружение создания виртуальной среды. Полный список улучшений приведен в нашем ?журнале изменений. Ну а в этой статье рассмотрим самые интересные обновления.



Улучшения в Python Language Server 


Python Language Server теперь имеет возможности linting, а его последний выпуск включает новые сообщения linting и ряд дополнительных общих улучшений, которые перечислены в разделе «Другие изменения и улучшения» ниже.

К сообщениям Linting, предоставляемым Python Language Server, относятся обнаружение неразрешенных импортов, неопределенных переменных, слишком большого количества аргументов в вызове функции, неизвестных аргументов ключевых слов и наследования от чего-то, что не является классом. Чтобы увидеть полный подробный список сообщений Linting, вы можете изучить документацию в репозитории Language Server на GitHub или на странице справки по настройкам в документации по Python для Visual Studio.



Кроме того, мы добавили общую поддержку #noqa, поэтому сообщения linting могут быть отключены в каждом конкретном случае. У строк с комментарием #noqa будет отключен диагностический аутпут. Для получения дополнительной информации вы можете проверить документацию



Улучшения в отладке ячеек Jupyter Notebook


В августовском релизе мы добавили возможность отладки ячеек Jupyter Notebooks, где вы можете войти в пользовательский код. В этом выпуске эта функция расширена за счет возможности в случае необходимости входить в непользовательский код. Чтобы включить фичу, откройте страницу настроек (File > Preferences > Settings), найдите «Data Science: Debug Just My Code» и снимите флажок.



Как только настройка отключена, вы сможете приступить к вызовам функций и, например, проверить поведение не-пользовательского кода и то, как изменяются переменные при его выполнении.



Обнаружение создания виртуальной среды


Интерпретатор Python, отображаемый в строке состояния, указывает, какую среду использует расширение Python для запуска кода Python (например, с помощью команды Python: Run Python File in Terminal) и для предоставления языковых услуг, таких как автозаполнение, проверка синтаксиса, linting, форматирование и т. д.



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



Это добавит путь к интерпретатору Python из новой виртуальной среды в настройки вашего рабочего пространства, и, следовательно, эта среда будет использоваться при установке пакетов и выполнении кода через расширение Python.

Другие изменения и улучшения 


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

  • Обновление Jedi до 0.15.1 и parso до 0.5.1. (#6294
  • PTVSD до 4.3.2. 
  • Добавлена настройка, позволяющая выполнять код Python при загрузке интерактивного окна. (#6842
  • Общие улучшения для Python Language Server 

Мы продолжаем A/B-тестировать новые функции. Если вы видите какую- то ошибку, которая не была объявлена командой, вы можете участвовать в эксперименте! Чтобы узнать, участвуете ли вы в эксперименте, вы можете проверить первые строки в аутпуте расширения Python. Если вы хотите отказаться от A/B-тестирования, отключите телеметрию в Visual Studio Code.

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

Комментарии (7)


  1. A114n
    30.09.2019 12:07

    До сих пор вылезает баг, при котором Visual Studio Code не может прочитать заглавную кириллическую букву в пути к файлу .py при запуске программы — и поэтому ничего не запускает.

    Мне так и не удалось понять, от чего он зависит.


  1. devlind
    30.09.2019 12:17

    Оффтоп.
    Недавно сел учить Python с помощью курса, организованного на Jupiter Notebooks. Господи, какая же это лажа этот Jupiter Notebooks. Например — там есть встроенные видео, когда их хочешь просмотреть — они открываются в новом окне, плюс каждый раз оно подвисает секунды на 4 подбирая подходящее качество. Почему нельзя блин сделать воспроизведение в том же окне и запомнить какое качество грузить? Если закрыть браузер и открыть его через час-два, то открытый проект уже не работает — будь добр перелогинься и открой все вкладки заново.
    Курс от его величества майкрософта. И вот я вроде бы хочу выучить язык, но меня терзают смутные сомнения что я там могу выучить когда меня учат те кто не могут нормально сам курс организовать.


  1. NickSin
    30.09.2019 12:28

    We are continuing to A/B test new features. If you see something different that was not announced by the team, you may be part of an experiment! To see if you are part of an experiment, you can check the first lines in the Python extension output channel. If you wish to opt-out from A/B testing, disable telemetry in Visual Studio Code.

    Мы продолжаем A/B-тестировать новые функции. Если вы видите какую- то ошибку, которая не была объявлена командой, вы можете участвовать в эксперименте! Чтобы узнать, участвуете ли вы в эксперименте, вы можете проверить первые строки в аутпуте расширения Python. Если вы хотите отказаться от A/B-тестирования, отключите телеметрию в Visual Studio Code.


    У вас остался англоязычный абзац, который ниже уже приведён.


    1. msgeek
      30.09.2019 12:31

      Да, действительно. Спасибо!


      1. dominigato
        01.10.2019 10:28

        вы можете проверить первые строки в аутпуте расширения Python.
        Наверное все таки в выводе расширения Python. И что же это за «вывод» такой?
        Полный список улучшений приведен в нашем ?журнале изменений.
        Последняя запись в этом журнале от 6 September 2019. Вряд ли вы это имели в виду.


  1. dominigato
    01.10.2019 10:32

    Кто нибудь все таки сумел как-то довести autocomplete в vscode хотя бы примерно до уровня PyCharm? Хотя бы чтобы при дополнении показывались в первую очередь функции из модуля, который я вызываю, а не все слова из английского словаря, всего питона и всех языков на свете?


    1. mariner
      01.10.2019 12:48

      и автоимпорт человеческий! и квик фикс для импорта