2016-11-01 62 views
5

我在Windows 7中的pycharm IDE中使用python 3.5.2,並且導入nltk包時遇到問題。ImportError:沒有名爲'nltk.tokenize'的模塊; 'nltk'不是包

import nltk 

提供了以下錯誤:

Traceback (most recent call last): 
File "<input>", line 1, in <module> 
File "C:\Program Files (x86)\JetBrains\PyCharm Community Edition 2016.2.3\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import module = self._system_import(name, *args, **kwargs) 
File "C:\Python\nltk practice.py", line 7, in <module> from nltk.tokenize import sent_tokenize, word_tokenize 
File "C:\Program Files (x86)\JetBrains\PyCharm Community Edition 2016.2.3\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import module = self._system_import(name, *args, **kwargs) 
ImportError: No module named 'nltk.tokenize'; 'nltk' is not a package 

NLTK似乎被正確安裝。當我運行在終端下面

pip install nltk 

我得到:

Requirement already satisfied (use --upgrade to upgrade): nltk in c:\users\leee\appdata\local\programs\python\python35-32\lib\site-packages 

當我在終端運行PATH,或在Python控制檯sys.path

C:\Users\leee\AppData\Local\Programs\Python\Python35-32\Lib\site-packages顯示了中長名單。這就是我安裝的所有其他軟件包以及其他所有正確導入的軟件包的位置。

我現在很困惑,所有的幫助表示讚賞。

+0

我也建議在PyCharm中使用'virtualenv'來隔離你的項目環境。我在這裏有一個答案:http://stackoverflow.com/questions/39937468/pycharm-import-error-claims-matplotlib-is-not-a-package-but-works-successful/39966670#39966670 – Marcs

回答

8

這通常是因爲您有另一個名爲nltk.py的文件。檢查您的目錄(C:\Python,您正在運行此腳本),並刪除或重命名它,如果它在那裏。 (我想流浪的nltk.py也可能在你的PYTHONPATH的其他地方。)

+1

謝謝,這是問題所在。我有一個名爲nltk.py的Python文件,我正在練習使用nltk。 – Lee88

1

在pycharm,按ctrl/cmd + shift + A,然後鍵入「Python解釋器」

,並確保你有同樣的解釋爲一個你pip指(而不是一些Jetbrains的默認之一)

注:如果你有兩個python 2.7python 3.x安裝,該公約是pip2.x DIST,並pip33.x

+0

如果一個版本不匹配是問題,錯誤將是'ImportError:沒有名爲'nltk''的模塊。 – alexis

+0

這不是我特別的問題,但我不知道可以做出區別。謝謝 – Lee88

1

謝謝。它解決了我的問題。

問題: 我創建了一個文件「nltk.py」,並在該文件中編寫代碼,並嘗試執行它給出錯誤'ModuleNotFoundError:No module named'nltk.tokenize'; 'nltk'不是一個包'。

解決方案: 之後,我將「nltk.py」重命名爲其他的,然後我的問題得到解決。

相關問題