python - Pylint 在 Windows 上安装失败

标签 python windows pylint

我尝试在 Windows 上安装 pylint(使用 visual studio 代码)。我有这个异常(exception),我找不到解决方案。 我已经尝试完全重新安装 python,但我遇到了完全相同的错误。 在其他 PC 上,相同的重现步骤工作正常。

>"C:\Program Files (x86)\Python36-32\python" -m pip install pylint
Collecting pylint
  Downloading pylint-1.7.2-py2.py3-none-any.whl (644kB)
    100% |████████████████████████████████| 645kB 1.9MB/s
Collecting colorama; sys_platform == "win32" (from pylint)
  Downloading colorama-0.3.9-py2.py3-none-any.whl
Collecting astroid>=1.5.1 (from pylint)
  Downloading astroid-1.5.3-py2.py3-none-any.whl (269kB)
    100% |████████████████████████████████| 276kB 4.1MB/s
Collecting isort>=4.2.5 (from pylint)
  Downloading isort-4.2.15-py2.py3-none-any.whl (43kB)
    100% |████████████████████████████████| 51kB 5.7MB/s
Collecting mccabe (from pylint)
  Downloading mccabe-0.6.1-py2.py3-none-any.whl
Collecting six (from pylint)
  Downloading six-1.10.0-py2.py3-none-any.whl
Collecting lazy-object-proxy (from astroid>=1.5.1->pylint)
  Downloading lazy_object_proxy-1.3.1-cp36-cp36m-win32.whl
Collecting wrapt (from astroid>=1.5.1->pylint)
  Downloading wrapt-1.10.11.tar.gz
Installing collected packages: colorama, six, lazy-object-proxy, wrapt, astroid, isort, mccabe, pylint
  Running setup.py install for wrapt ... error
Exception:
Traceback (most recent call last):
  File "C:\Program Files (x86)\Python36-32\lib\site-packages\pip\compat\__init__.py", line 73, in console_to_str
    return s.decode(sys.__stdout__.encoding)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 5: invalid continuation byte

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Program Files (x86)\Python36-32\lib\site-packages\pip\basecommand.py", line 215, in main
    status = self.run(options, args)
  File "C:\Program Files (x86)\Python36-32\lib\site-packages\pip\commands\install.py", line 342, in run
    prefix=options.prefix_path,
  File "C:\Program Files (x86)\Python36-32\lib\site-packages\pip\req\req_set.py", line 784, in install
    **kwargs
  File "C:\Program Files (x86)\Python36-32\lib\site-packages\pip\req\req_install.py", line 878, in install
    spinner=spinner,
  File "C:\Program Files (x86)\Python36-32\lib\site-packages\pip\utils\__init__.py", line 676, in call_subprocess
    line = console_to_str(proc.stdout.readline())
  File "C:\Program Files (x86)\Python36-32\lib\site-packages\pip\compat\__init__.py", line 75, in console_to_str
    return s.decode('utf_8')
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 5: invalid continuation byte

您有什么问题吗?

编辑: 正如 Shankar 所说,我手动安装了 astroid。第一次没用。我遇到了这个问题:python easy_install pylint Error: The system cannot find the file specified 安装终于成功了,但 pylint 没有任何变化。

这是我尝试运行 pylint 时收到的日志

Traceback (most recent call last):
  File "c:\program files (x86)\python36-32\lib\runpy.py", line 193, in _run_modu
le_as_main
    "__main__", mod_spec)
  File "c:\program files (x86)\python36-32\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Program Files (x86)\Python36-32\Scripts\pylint.exe\__main__.py", line
 9, in <module>
  File "c:\program files (x86)\python36-32\lib\site-packages\pylint\__init__.py"
, line 12, in run_pylint
    from pylint.lint import Run
  File "c:\program files (x86)\python36-32\lib\site-packages\pylint\lint.py", li
ne 43, in <module>
    import astroid
  File "c:\program files (x86)\python36-32\lib\site-packages\astroid\__init__.py
", line 57, in <module>
    from astroid.nodes import *
  File "c:\program files (x86)\python36-32\lib\site-packages\astroid\nodes.py",
line 30, in <module>
    from astroid.node_classes import (
  File "c:\program files (x86)\python36-32\lib\site-packages\astroid\node_classe
s.py", line 26, in <module>
    from astroid import decorators
  File "c:\program files (x86)\python36-32\lib\site-packages\astroid\decorators.
py", line 12, in <module>
    import wrapt
  File "c:\program files (x86)\python36-32\lib\site-packages\wrapt\__init__.py",
 line 4, in <module>
    from .wrappers import (ObjectProxy, CallableObjectProxy, FunctionWrapper,
ModuleNotFoundError: No module named 'wrapt.wrappers'

谢谢

最佳答案

安装

Pylint需要astroid包(越晚越好)

https://github.com/PyCQA/astroid

安装应该很简单

python -m pip install astroid

Pylint需要isort包(越晚越好)

https://github.com/timothycrosley/isort

安装应该很简单

python -m pip install isort

如果你想从源代码分发安装,解压 tarball 并运行以下命令

python setup.py 安装

您必须以类似的方式安装依赖项。对于 debian 和 rpm 包,请根据您的 Linux 发行版使用您常用的工具。

有关安装和可用分发格式的更多信息可以在 doc 子目录中的用户手册中找到。

安装好这两个依赖后,再尝试安装pylint

关于python - Pylint 在 Windows 上安装失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46240690/

相关文章:

c++ - Windows 是否支持从内存运行程序?

python - Windows:如何配置多个版本的Python以协同工作?

python - Pylint 未按预期工作

python - ipython,从 bash 到变量

python - python函数的多个输入

python - 检查两个向量是否相等python

java - 如何在 Windows 中进行 SNMP 查询?

python - 使用 Python 2.X 的语言环境模块格式化数字和货币

python - 如何在python源码中配置pylint

python - 以编程方式调用 Pylint