Python无法在我的脚本中“导入nltk”,但在解释器中工作

时间:2014-04-18 14:01:03

标签: python windows import nltk

我弄清楚原因,我将原始脚本文件命名为nltk.py,因此python尝试从脚本文件orz中导入word_tokenize。抱歉这个愚蠢的错误。


我正在尝试在Windows上使用Python中的nltk。 我已经安装了nltk和nltk数据。

然而,当我尝试跑步时     python -u 'filename.py' 在命令行中,它给出了如下错误。

Traceback (most recent call last):
  File "filename.py", line 1, in (module)
    from nltk import word_tokenize
  File "filenmae.py", line 1, in (module)
    from nltk import word_tokenize
ImportError: cannot import name word_tokenize

另一方面,当我跑步时     python < 'filename.py' 给出了正确的结果。

filename.py中的代码是一个简单的测试代码,如下所示。

from nltk import word_tokenize
tokens = word_tokenize('hello i am your friend')
print(tokens)
你可以帮我这个吗?提前谢谢。

我尝试按照源安装说明here重新安装nltk。但它没有用。

另外,我过去安装了python 3.3,但是我发现nltk在安装过程中无法识别python 3.3,所以我安装了python 2.7。现在我的计算机上实际上有两个版本的python。

相关的用户路径为C:\Python27

在系统路径中,相关字段为:

路径C:\Python27\

PYTHONIOENCODING utf-8

PYTHONPATH C:\Python27

我在命令行中运行它时的python版本是

Python 2.7.3 (Date) [MSC v.1500 32 bit (Intel)] on win32

另外,我尝试在命令行上运行以下代码并使用给定here的脚本文件:

import nltk
import sys
print(nltk)
print(sys.executable)

在命令行中,结果为

>>> print(nltk)
<module 'nltk' from 'C:\Python27\lib\site-packages\nltk\__init__.pyc'>
>>> print(sys.executable)
C:\Python27\python.exe

使用脚本结果

<module 'nltk' from 'C:\Users\username\Documents\nltk.py'>
C:\Python27\python.exe
<module 'nltk' from 'C:\Users\username\Documents\nltk.py'>
C:\Python27\python.exe

1 个答案:

答案 0 :(得分:2)

我想出了原因,我将原始脚本文件命名为nltk.py,因此python尝试从脚本文件orz中导入word_tokenize。抱歉这个愚蠢的错误。