Skip to main content
 首页 » 编程设计

python之简单 NLTK 示例中的 ImportError

2025年05月04日22lonelyxmas

我是 Python 和 NLTK 的新手 当我在 Python 控制台中测试以下行时

import nltk.data 
tokenizer = nltk.data.load('tokenizers/punkt/english.pickle') 
text ="toto. titi. tutu" 
tokens = tokenizer.tokenize(text) 
print(tokens) 

我得到了我所期望的。但是当我从一个文件中执行这些行时,例如使用命令行 > python tokenize.py,我得到错误:

C:\outils\Python\WinPython-64bit-3.4.3.5\python-3.4.3.amd64\python.exe C:/Documents/Dvpt/SemanticAndOpenData/scholar/scholar.py/tokenize.py 
Traceback (most recent call last): 
  File "C:/Documents/Dvpt/SemanticAndOpenData/scholar/scholar.py/tokenize.py", line 1, in <module> 
    import nltk.data 
  File "C:\outils\Python\WinPython-64bit-3.4.3.5\python-3.4.3.amd64\lib\site-packages\nltk\__init__.py", line 89, in <module> 
    from nltk.internals import config_java 
  File "C:\outils\Python\WinPython-64bit-3.4.3.5\python-3.4.3.amd64\lib\site-packages\nltk\internals.py", line 11, in <module> 
    import subprocess 
  File "C:\outils\Python\WinPython-64bit-3.4.3.5\python-3.4.3.amd64\lib\subprocess.py", line 395, in <module> 
    import threading 
  File "C:\outils\Python\WinPython-64bit-3.4.3.5\python-3.4.3.amd64\lib\threading.py", line 10, in <module> 
    from traceback import format_exc as _format_exc 
  File "C:\outils\Python\WinPython-64bit-3.4.3.5\python-3.4.3.amd64\lib\traceback.py", line 3, in <module> 
    import linecache 
  File "C:\outils\Python\WinPython-64bit-3.4.3.5\python-3.4.3.amd64\lib\linecache.py", line 10, in <module> 
    import tokenize 
  File "C:\Documents\Dvpt\SemanticAndOpenData\scholar\scholar.py\tokenize.py", line 2, in <module> 
    tokenizer = nltk.data.load('tokenizers/punkt/english.pickle') 
  File "C:\outils\Python\WinPython-64bit-3.4.3.5\python-3.4.3.amd64\lib\site-packages\nltk\data.py", line 786, in load 
    resource_val = pickle.load(opened_resource) 
  File "C:\outils\Python\WinPython-64bit-3.4.3.5\python-3.4.3.amd64\lib\site-packages\nltk\tokenize\__init__.py", line 63, in <module> 
    from nltk.tokenize.simple   import (SpaceTokenizer, TabTokenizer, LineTokenizer, 
  File "C:\outils\Python\WinPython-64bit-3.4.3.5\python-3.4.3.amd64\lib\site-packages\nltk\tokenize\simple.py", line 38, in <module> 
    from nltk.tokenize.api import TokenizerI, StringTokenizer 
  File "C:\outils\Python\WinPython-64bit-3.4.3.5\python-3.4.3.amd64\lib\site-packages\nltk\tokenize\api.py", line 13, in <module> 
    from nltk.internals import overridden 
ImportError: cannot import name 'overridden' 
Process finished with exit code 1 

我被这个问题困住了,找不到解决它的方法。提前感谢任何有用的建议。

请您参考如下方法:

您需要为脚本命名 tokenize.py