7 полезных расширений VS Code для Python-разработчиков

Автор оригинала: Juan Cruz Martinez
  • Перевод
Наиболее важные и полезные расширения VS Code для Python-разработчиков в нашем новом переводе.

Я пользуюсь PyCharm, и меня всё устраивает. Скорее всего, я не буду менять редактор в ближайшее время. Но вокруг VS Code столько шумихи, столько людей в Reddit и Twitter советовали мне перейти на VS Code, что я просто не мог его не попробовать.

И это был замечательный опыт! Хотя мое сердце все еще принадлежит PyCharm, VS Code — классный продукт. Я могу его порекомендовать на все 100%. Он настраиваемый и быстрый, а большое количество расширений делают VS Code очень мощным и функциональным.

Давайте рассмотрим наиболее важные расширения VS Code для Python на 2021 год.

Python




VS Code поддерживает выделение кода для Python и без этого расширения. Однако я всё же советую его установить. Расширение Python, так же как и сам VS Code, разработано командой Microsoft. Оно так важно для продуктивности Python-разработчиков, что VS Code автоматически предложит вам установить его сразу после открытия первого .py файла.

Но зачем нужно это расширение, если у нас уже есть подсветка синтаксиса? Когда мы пишем Python, данное расширение — мощный источник полезных функций:

  • IntelliSense: Редактируйте код с возможностями автодополнения, навигации по коду, проверки синтаксиса и др.
  • Линтинг (Linting): Дополнительно анализируйте код с помощью Pylint, Flake8 и др.
  • Форматирование кода: Оформите код с помощью black, autopep или YAPF.
  • Отладка: Отлаживайте Python-скрипты, веб-приложения, а также удаленные или многопоточные процессы.
  • Тестирование: Запуск и отладка тестов через Test Explorer с помощью unittest, pytest или nose.
  • Jupyter Notebooks: Создавайте и редактируйте блокноты Jupyter, добавляйте и запускайте ячейки (code cells), рисуйте графики, визуализируйте переменные с помощью Variable Explorer, визуализируйте Dataframe с помощью Data Viewer и т. д.
  • Окружения: Автоматическая активация и переключение между окружениями virtualenv, venv, pipenv, conda и pyenv.
  • Рефакторинг: Переработайте код на Python с помощью приемов извлечения переменной, извлечения метода и сортировки импортов.


Посмотрите, как работает это расширение:



Скачать расширение Python

Python Snippets




Python Snippets — это расширение, предоставляющее встроенные наборы сниппетов, которые были разработаны Ферхатом Ялчином (Ferhat Yalçın). Этот плагин отлично подходит для всех, в том числе и для новичков.

Python Snippets содержит множество встроенных сниппетов, таких как string, list, sets, tuple, dictionary, class и другие.

Еще одно преимущество этого плагина: он предоставляет как минимум по одному примеру для каждого сниппета, что особенно актуально при изучении Python.

Скачать Python Snippets

Python Docstring Generator




Никто не будет сомневаться в важности ведения документации, но все мы понимаем, что иногда это может быть не самой приятной задачей. С Python Docstring Generator от разработчиков потребуется минимум усилий благодаря автоматическому созданию строк документации (docstrings).

Особенно круто, что это расширение следует всем стандартным форматам строк документации, включая Google, docBlockr, Numpy, Sphinx и PEP0257).

Кроме того, этот генератор строк документации поддерживает args, kwargs, decorators, errors и типы параметров, отображая их как многострочный комментарий.

Просто посмотрите на это:



Скачать Python Docstring Generator

Python Test Explorer для Visual Studio Code




Расширение Python Test Explorer позволяет запускать тесты Python unittest или Pytest с помощью Test Explorer UI. Этот небольшой и удобный инструмент с отличным пользовательским интерфейсом и возможностями отладки позволит протестировать ваш код прямо из VS Code.

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



Скачать Python Test Explorer

Python Preview




Python Preview — это расширение, которое включает визуальную отладку в ваш код на Python. Оно превращает процесс отладки кода в интерактивное действие с анимацией и графическими элементами для представления состояния вашего приложения.

Вы должны это увидеть:



Скачать Python Preview

Python Type Hint




Да, в Python есть что-то вроде типов (Types). И да, это круто! Type Hints для Python — как TypeScript для JavaScript. Это расширение полностью меняет правила игры. Надеюсь, что мы будем видеть его всё чаще в руководствах и реализации. Python Type Hint предоставляет подсказки автодополнения для встроенных и предполагаемых типов и модуля typing.

Более того, оно может искать Python-файлы в рабочей области для прогнозирования и определения типа.



Скачать Python Type Hint

Jupyter




Jupyter — одно из моих любимых расширений VS Code. Да, это как раз то, о чем вы подумали, — Jupyter Notebooks в VS Code.

Я тот человек, который всегда работает с Jupyter Notebooks, это расширение действительно полезно. И я считаю, что мне еще многое в нем предстоит изучить.

Интеграция с Jupyter Notebooks — одна из моих любимых функций в PyCharm, и, честно говоря, интеграция в PyCharm мне нравится больше, чем интеграция в VS Code. Однако Jupyter для VS Code бесплатно, а интеграция с PyCharm доступна только в профессиональной версии.

Скачать Jupyter

Вывод


VS Code меня приятно удивил! Это надежный инструмент для быстрого, гибкого кодинга с расширенной функциональностью.

Забавно, что все перечисленные расширения являются моими любимыми функциями в PyCharm, но в VS Code они бесплатны, но при этом такие же удобные.

Некоторые нюансы в редакторе VS Code меня беспокоят, поэтому я по-прежнему выбираю PyCharm. Однако с появлением таких качественных расширений VS Code я понимаю, что оправдать стоимость PyCharm будет всё сложнее.

Спасибо за внимание!
Timeweb
VDS, инфраструктура и решения для бизнеса

Комментарии 12

    0
    Хорошая подборка. Многое из всего этого использую.
    VSCode очень нравится. Единственное, что немного смущает:
    «Неужели Microsoft сделали это для нас бесплатно?»
      +1
      Ну как бесплатно, для MS текущее направление развития — это Azure. Редактор — это один из компонент в стеке. Т.е. я так понял идея, что надо пересадить всех на этот редактор, а потом на каком-то этапе добавить дефолтную кнопку «Deploy to Azure».
      Считайте что на это идет рекламный бюджет от Azure
        –1

        Русификаторов нет?

        +1

        Что это за подборка без Pylance?

          +1
          Некоторые нюансы в редакторе VS Code меня беспокоят

          Какие?

            0

            Спасибо за статью, ждем такую же про PyCharm.

              –2
              Пару месяцев назад изучал возможность перехода с Emacs на VS Code, но застопорился на том, что не смог переключиться обратно на использование мыши. Равно как и настроить VS Code на работу только с клавиатуры.

              В итоге плюнул на это дело и радикально актуализировал конфиги Emacs, с предыдущей версией которых я жил лет 5-10.
                +1
                А чего не хватило в Vim режиме для VSCode?
                  0
                  Конкретно Vim режим я не смотрел, так как Emacs-ер :-) Но с некоторыми расширениями, конечно, экспериментировал.

                  Основная претензия в том, что все решения, которые я видел, неполные. Да, они позволяют делать навигацию по тексту с клавиатуры. Если напрячься, можно перевести часть навигации не по тексту тоже на клавиатуру. Но всё равно оставались моменты, которые у меня не получалось быстро переложить, а тратить очень много времени на разбирательство с инструментом, которым может и пользоваться не буду, я не хотел.

                  В итоге у меня получалось, что 90% времени ты нормально работаешь, а потом спотыкаешься на неожиданном месте и приходится тянуться к мыши. Это выбивает из потока.

                  В частности, я не нашёл способа открывать файлы в обход стандартного системного диалога.
                    +1
                    Вот тут вроде нашли.
                      +1
                      В частности, я не нашёл способа открывать файлы в обход стандартного системного диалога.

                      Есть такая опция. Не понятно только, почему по умолчанию не включена.


                      "files.simpleDialog.enable": true
                  0
                  Сижу на pyCharm Community, есть смысл перейти на VS Code?
                  Пишу маленькие проектики на aiogram и django.

                  Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                  Самое читаемое