2017-11-26 1 views
2

Visual Studio 코드를 pylint와 함께 사용하려고합니다. 내가 어떤 평 파일을로드 할 때, 나는 출력 콘솔에 다음과 같은 오류가 발생합니다 : 명령 행에서이 명령을 실행할 때pylint가 실행 중입니다. ModuleNotFoundError : 'wrapt.wrappers'라는 모듈이 없습니다.

이 VS 코드에 특정하지
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' 

, 나는 같은 결과를 얻을 :

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) 

파이썬 3.6.3 32 비트 승 10 64 비트에. 파이썬의 경로는 시스템의 환경 변수에서 설정됩니다.

답변

1

비슷한 환경 (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\ 

이제 내 전화가 작동 중입니다.

+0

린터가 pip에 설치되어있는 것으로 보입니까? – Cutter

+0

예. 실제로 다른 환경 (win7, 32bit)에서 파이썬 linter를 포함한 vscode를 사용하고 win10 64bit와 달리 vipode는 pip 설치 직후에 잘 실행됩니다. 내가 거기에서 린터를 비교했을 때, 그리고 위의 github에서 얻은 린터를 비교했을 때, 행동은 똑같습니다, 내가 말할 수있는 한. –

+0

위의 github repo가 ​​잘 작동하는지 알려주세요. –

0

모듈 포장이 잘못 설치되어 제거되었습니다. pip가 MSVC 경고에서 특수 문자를 처리 할 수 ​​없기 때문에 재설치가 실패했습니다. (처음 설치가 어떻게 성공적으로보고되었는지는 알 수 없음).

핍이 콘솔 출력에 특수 문자를 처리 할 때 버그가 있습니다.

return s.decode(sys.__stdout__.encoding)

에 :

return s.decode(sys.__stdout__.encoding, "replace")

을 다시 python -m pip install pylint을 실행 문제를 해결 전에서 ​​\lib\site-packages\pip\compat\__init__.py

에서 라인 73을 대체했습니다. 이번에는 효과가있었습니다.

관련 문제