Windows

时间:2017-09-15 13:24:31

标签: python windows pylint

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

>"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'

由于

1 个答案:

答案 0 :(得分:0)

安装

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 install

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

有关安装和可用分发格式的更多信息,请参见doc子目录中的用户手册。

安装这两个依赖项后,请尝试再次安装pylint。