Pylint not running as expected in VScode

2020-07-10 05:54发布

问题:

When I am running via shell a pylint:

$ pylint decorator.py 
No config file found, using default configuration
************* Module decorator
C:  7, 0: Unnecessary parens after 'print' keyword (superfluous-parens)
C: 15, 0: Unnecessary parens after 'print' keyword (superfluous-parens)
C:  1, 0: Missing module docstring (missing-docstring)
C:  4, 0: Missing function docstring (missing-docstring)
C:  6, 4: Missing function docstring (missing-docstring)
C: 14, 0: Missing function docstring (missing-docstring)

However, as it can be seen below, these warning do not come up in VSCode

... despite the fact that some basic checking is indeed performed as it shown in the next picture where I have removed a blank line:

回答1:

Assuming you have configured Python's Extension correctly and you have Pylint installed,

VSCode's Python Extension will do minimal checking by default if you do not provide a Pylint configuration option.

Simply enter "python.linting.pylintUseMinimalCheckers": false, into your .vscode/settings.json to force this off.

This is how mine looks:

{
    "autoDocstring.docstringFormat": "numpy",
    "editor.minimap.enabled": false,
    "editor.selectionClipboard": false,
    "python.pythonPath": "/home/jim/anaconda3/envs/dipoleDisplay",
    "window.zoomLevel": 0,
    "terminal.integrated.rendererType": "dom",
    "python.linting.pylintUseMinimalCheckers": false,
}



回答2:

I had a similar problem where flake8 worked in VSCode but pylint didn't. Here are all the steps I had to check for pylint to start working:

  1. Your .vscode\settings.json file enables linting by pylint (this can be hand edited or by running these command palette commands: Python: Enable Linting and Python: Select Linter)

    "python.linting.enabled": true

    "python.linting.pylintEnabled": true

  2. from the command line (while in virtual environment) confirming that pylint and pylint-django are installed.

    pip show pylint

    pip show pylint-django

  3. Add a .pylintrc file to your root directory that includes these lines.

    [MASTER]

    load-plugins=pylint_django

(NOTE: you can replace this pylintrc file with the following line in settings.json.)

"python.linting.pylintArgs": ["--load-plugins", "pylint_django"]

For more info about using pylint in VSCode, see https://code.visualstudio.com/docs/python/linting#_pylint

For more info about the pylintrc file, see https://docs.pylint.org/en/1.6.0/run.html#command-line-options