我弄清楚原因,我将原始脚本文件命名为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
答案 0 :(得分:2)
我想出了原因,我将原始脚本文件命名为nltk.py
,因此python尝试从脚本文件orz中导入word_tokenize。抱歉这个愚蠢的错误。