2017-05-06 235 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