У VS Code есть проблемы с Pylint

#python #visual-studio-code #pylint

#python #visual-studio-code #pylint

Вопрос:

Моя среда: Mac, Python 3.9, venv.

Это файл, который я хочу удалить (редактор не показывает линтинг). введите описание изображения здесь

 import pandas as pd

df = pd.DataFrame()
fc = 1
 

Запуск компоновщика в командной строке возвращает ожидаемое:
введите описание изображения здесь

Я уже проверил различные записи SO и применил следующие предлагаемые решения

  1. В vscode я включил компоновку, выбрал pylint в качестве компоновщика и запустил
  2. Я отключил минимальные проверки. My .vscode/settings.json:
     {
    "python.linting.pylintUseMinimalCheckers": false,
    "python.linting.enabled": true,
    "python.linting.pylintEnabled": true,
    "python.pythonPath": "venv/bin/python"
    }
     
  3. Создал .pylintrc с pylint --generate-rcfile -encoding utf8 > ~/.pylintrc

Есть идеи, как это исправить?

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

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

2. проверил все вкладки, нет вывода, связанного с linting. Просто [INFO 11:50:55.902] autoDocstring was activated

Ответ №1:

Основываясь на вашем описании, рекомендуется проверить следующие два файла:

  1. Пожалуйста, проверьте, содержит ли файл настроек « settings.json » "python.linting.pylintArgs": [], соответствующие настройки.

    В дополнение к « .vscode/settings.json «, который вы предоставили, мы также должны обратить внимание на проверку того, содержит ли глобальная настройка « User/settings.json » вышеуказанные настройки, это отключит информацию о Pylint, если содержимое установлено.

    например: "python.linting.pylintArgs":[ "----extension-pkg-whitelist=1xml" ] это закрытое содержимое, поэтому оно закроет информацию о Pylint. Пожалуйста, прокомментируйте этот параметр.

  2. Поскольку вы создали файл « .pylintrc «, пожалуйста, проверьте, содержит ли файл что-то вроде
 disable=
     C0114, # missing-module-docstring
     C0103, # invalid-name"
 

связанные настройки, это отключит определенные уведомления Pylint.

Эффект:

введите описание изображения здесь

Содержание моего « .vscode/settings.json » в основном такое же, как у вас. Ниже приводится содержание моего « User/settings.json «:

 {
  
  "terminal.integrated.shell.windows": "C:\WINDOWS\System32\cmd.exe",
  "workbench.iconTheme": "vscode-icons",
  "files.autoSave": "afterDelay",
  "files.autoSaveDelay": 1000,
  "python.linting.enabled": true, 
  "python.languageServer": "Microsoft",
  
       
}
 

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

1. Добавление "python.linting.pylintArgs": [] к .vscode/settings.json решению проблемы. большое спасибо за ценный совет

2. Я также проверил своего Пользователя settings.json , где я его нашел "python.linting.pylintArgs": [ "--rcfile", "${workspaceFolder}/backend/.pylintrc" ] . Очевидно, это и вызвало проблему. Могу ли я безопасно удалить то, что находится внутри скобок?

3. @zinyosrim -Да, это именно то, что предлагается в моем ответе (1.). Пожалуйста, прокомментируйте этот параметр. Он отключит информацию о Pylint, если задано содержимое, а также будет доступен, если содержимое этого параметра пустое.

Ответ №2:

Я видел, что вы отключили Minimal checkers в своем файле конфигурации, но у меня это работает с поддержкой графического интерфейса VSCode, поэтому давайте попробуем:

Конфигурация — когда я использую pylint в качестве компоновщика и Minimal checkers отключен: введите описание изображения здесь

Результат — глобальная переменная в нижнем регистре генерирует сообщение. введите описание изображения здесь

ПРИМЕЧАНИЕ: Пожалуйста, убедитесь, что вы используете Pylint в качестве компоновщика (как на первом прилагаемом изображении).

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

1. мои настройки графического интерфейса пока такие же, как у вас

2. Можете ли вы проверить, видите ли вы какую-нибудь вкладку вывода? Похоже, что для автора вопроса плагин каким-то образом не активирован или не запущен.

3. Мой вывод показывает команду и вывод pylint, но почему-то он не выполняется в среде автора. :/