2017-05-06 310 views
0

我试图运行“pip install nltk”,但得到如此多的错误。尽管我试图安装导致错误的依赖关系,但它们并没有被安装。使用Python3.6安装NLTK时出错

Invalid requirement: 'nltk()' 
Traceback (most recent call last): 
    File "c:\program files (x86)\python36-32\lib\site-packages\pip\_vendor\packagi 
ng\requirements.py", line 92, in __init__ 
    req = REQUIREMENT.parseString(requirement_string) 
    File "c:\program files (x86)\python36-32\lib\site-packages\pip\_vendor\pyparsi 
ng.py", line 1617, in parseString 
    raise exc 
    File "c:\program files (x86)\python36-32\lib\site-packages\pip\_vendor\pyparsi 
ng.py", line 1607, in parseString 
    loc, tokens = self._parse(instring, 0) 
    File "c:\program files (x86)\python36-32\lib\site-packages\pip\_vendor\pyparsi 
ng.py", line 1379, in _parseNoCache 
    loc,tokens = self.parseImpl(instring, preloc, doActions) 
    File "c:\program files (x86)\python36-32\lib\site-packages\pip\_vendor\pyparsi 
ng.py", line 3376, in parseImpl 
    loc, exprtokens = e._parse(instring, loc, doActions) 
    File "c:\program files (x86)\python36-32\lib\site-packages\pip\_vendor\pyparsi 
ng.py", line 1383, in _parseNoCache 
    loc,tokens = self.parseImpl(instring, preloc, doActions) 
    File "c:\program files (x86)\python36-32\lib\site-packages\pip\_vendor\pyparsi 
ng.py", line 3164, in parseImpl 
    raise ParseException(instring, loc, self.errmsg, self) 
pip._vendor.pyparsing.ParseException: Expected stringEnd (at char 4), (line:1, c 
ol:5) 

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\req\req_install 
.py", line 82, in __init__ 
    req = Requirement(req) 
    File "c:\program files (x86)\python36-32\lib\site-packages\pip\_vendor\packagi 
ng\requirements.py", line 96, in __init__ 
    requirement_string[e.loc:e.loc + 8])) 
pip._vendor.packaging.requirements.InvalidRequirement: Invalid requirement, pars 
e error at "'()'" 

请错误检查截图:Error Screenshot

+0

Py3.6尚未正式支持,请参阅https://github.com/nltk/nltk/issues/1659 – alvas

+0

可能的重复http://stackoverflow.com/questions/42313776/nltk-for-python- 3-6功能于windows64 – alvas

回答

1

看来你没有安装软件包的权限。尝试以管理员身份运行命令行。

0

Python包同治最好的做法是创建一个虚拟的环境,看到http://python-guide-pt-br.readthedocs.io/en/latest/dev/virtualenvs/

首先安装virtualenv库本地用户

pip install --user virtualenv 

How to install python modules without root access?PEP370

对于Python2 .7,创建目录下的虚拟环境my_nltk_project

virtualenv -p /usr/bin/python2.7 my_nltk_project 

或者在Python3:

virtualenv -p /usr/bin/python3.5 my_nltk_project 
source my_nltk_project/bin/activate 

确保Python3是Py3​​.4或Py3.5,Py3.6尚未正式支持,看到https://github.com/nltk/nltk/issues/1659

现在你应该在虚拟环境中,您的命令提示符将如下所示:

(my_nltk_project):~$ 

现在做一个点子安装:

pip install nltk 

可选择使用-U选择是升级nltkpip install -U nltk

你使用的环境中完成后,只要做到这一点离开环境:

(my_nltk_project):~$ deactivate 

要重新使用环境:

:~$ source my_nltk_project/bin/activate 

或者,你可以试试这个没有虚拟环境:

pip install --user nltk 

如果你是一个Windows机器上,我们强烈建议您使用conda管理NLTK包,见https://gist.github.com/alvations/0ed8641d7d2e1941b9f9