python - 运行 pylint 返回 ModuleNotFoundError : No module named 'wrapt.wrappers'

标签 python pylint

我正在尝试将 Visual Studio Code 与 pylint 结合使用。当我加载任何 .py 文件时,我在输出控制台中收到以下错误:

Linting with pylint failed.
You could either install the 'pylint' linter or turn it off in setings.json via "python.linting.pylintEnabled = false".
Error: Command failed: C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\python.exe -m pylint --msg-template='{line},{column},{category},{msg_id}:{msg}' --reports=n --output-format=text c:\Users\(...)\Desktop\Untitled-1.py
Traceback (most recent call last):
  File "C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pylint\__main__.py", line 7, in <module>
    pylint.run_pylint()
  File "C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pylint\__init__.py", line 12, in run_pylint
    from pylint.lint import Run
  File "C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pylint\lint.py", line 43, in <module>
    import astroid
  File "C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\lib\site-packages\astroid\__init__.py", line 57, in <module>
    from astroid.nodes import *
  File "C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\lib\site-packages\astroid\nodes.py", line 30, in <module>
    from astroid.node_classes import (
  File "C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\lib\site-packages\astroid\node_classes.py", line 26, in <module>
    from astroid import decorators
  File "C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\lib\site-packages\astroid\decorators.py", line 12, in <module>
    import wrapt
  File "C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\lib\site-packages\wrapt\__init__.py", line 4, in <module>
    from .wrappers import (ObjectProxy, CallableObjectProxy, FunctionWrapper,
ModuleNotFoundError: No module named 'wrapt.wrappers'

这不是 VS Code 特有的,我从命令行运行此命令时得到相同的结果:

C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\python.exe -m pylint --msg-template='{line},{column},{category},{msg_id}:{msg}' --reports=n --output-format=text c:\Users\(...)\Desktop\Untitled-1.py

pylint 的依赖已安装:

PS C:\Users\(...)> & C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\python.exe -m pip install pylint
Requirement already satisfied: pylint in c:\users\(...)\appdata\local\programs\python\python36-32\lib\site-packages
Requirement already satisfied: six in c:\users\(...)\appdata\local\programs\python\python36-32\lib\site-packages (from pylint)
Requirement already satisfied: colorama; sys_platform == "win32" in c:\users\(...)\appdata\local\programs\python\python36-32\lib\site-packages (from pylint)
Requirement already satisfied: isort>=4.2.5 in c:\users\(...)\appdata\local\programs\python\python36-32\lib\site-packages (from pylint)
Requirement already satisfied: mccabe in c:\users\(...)\appdata\local\programs\python\python36-32\lib\site-packages (from pylint)
Requirement already satisfied: astroid>=1.5.1 in c:\users\(...)\appdata\local\programs\python\python36-32\lib\site-packages (from pylint)
Requirement already satisfied: lazy-object-proxy in c:\users\(...)\appdata\local\programs\python\python36-32\lib\site-packages (from astroid>=1.5.1->pylint)
Requirement already satisfied: wrapt in c:\users\(...)\appdata\local\programs\python\python36-32\lib\site-packages (from astroid>=1.5.1->pylint)

Win 10 64 位上的 Python 3.6.3 32 位。 Python的路径是在系统的环境变量中设置的。

最佳答案

我遇到了同样的问题,环境相似(win 10 64 位,VSCode,Python 3.6.3)。 我从 wrapt github repo 下载了所有文件: https://github.com/GrahamDumpleton/wrapt/tree/master/src/wrapt 然后我把它放在我的 wrapt 文件夹里。

    C:\Users\(...)\AppData\Local\Programs\Python\Python36-32\lib\site-packages\wrapt\

现在我的 linter 可以正常工作了。

关于python - 运行 pylint 返回 ModuleNotFoundError : No module named 'wrapt.wrappers' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47496329/

相关文章:

python - 如何在 docker 容器中打开 jupyter nookbooks?

python -\u200c 而不是真正的半空间

python - 从 pylint 了解 "Too many ancestors"

github - 是否有可能检查导入模块的使用情况?

python - Pylint W0223 : Method . ..在类中是抽象的...但未被覆盖

python - 如何在cloudsearch boto3上使用filterQuery和queryOptions

python - 在 Python 中将分数年转换为实际日期

Python - 执行sqlite查询后的正则表达式模式匹配问题

python - pep8 警告 8 空格缩进

python - 皮林特。如何禁用图形?