【问题标题】:how to fix ImportError: cannot import name 'format_exception_only' in python如何修复 ImportError:无法在 python 中导入名称“format_exception_only”
【发布时间】:2017-10-17 05:30:14
【问题描述】:

当我尝试运行简单的标记化程序时,我正在使用 python 3.6.1 的 pycharm 社区版本,因为我是初学者 -

import nltk
from nltk.tokenize import word_tokenize
word_tokenize(" hellow world im nltk")

我收到以下错误 -

C:\Users\Amnaa\AppData\Local\Programs\Python\Python36-32\python.exe E:/test/token.py
Traceback (most recent call last):
  File "E:/test/token.py", line 1, in <module>
    import nltk
  File "C:\Users\Amnaa\AppData\Local\Programs\Python\Python36-32\lib\site-packages\nltk\__init__.py", line 89, in <module>
    from nltk.internals import config_java
  File "C:\Users\Amnaa\AppData\Local\Programs\Python\Python36-32\lib\site-packages\nltk\internals.py", line 11, in <module>
    import subprocess
  File "C:\Users\Amnaa\AppData\Local\Programs\Python\Python36-32\lib\subprocess.py", line 126, in <module>
    import threading
  File "C:\Users\Amnaa\AppData\Local\Programs\Python\Python36-32\lib\threading.py", line 7, in <module>
    from traceback import format_exc as _format_exc
  File "C:\Users\Amnaa\AppData\Local\Programs\Python\Python36-32\lib\traceback.py", line 5, in <module>
    import linecache
  File "C:\Users\Amnaa\AppData\Local\Programs\Python\Python36-32\lib\linecache.py", line 11, in <module>
    import tokenize
  File "C:\Users\Amnaa\AppData\Local\Programs\Python\Python36-32\lib\tokenize.py", line 35, in <module>
    from token import *
  File "E:\test\token.py", line 2, in <module>
    from nltk.tokenize import word_tokenize
  File "C:\Users\Amnaa\AppData\Local\Programs\Python\Python36-32\lib\site-packages\nltk\tokenize\__init__.py", line 64, in <module>
    from nltk.tokenize.mwe      import MWETokenizer
  File "C:\Users\Amnaa\AppData\Local\Programs\Python\Python36-32\lib\site-packages\nltk\tokenize\mwe.py", line 31, in <module>
    from nltk.util import Trie
  File "C:\Users\Amnaa\AppData\Local\Programs\Python\Python36-32\lib\site-packages\nltk\util.py", line 13, in <module>
    import pydoc
  File "C:\Users\Amnaa\AppData\Local\Programs\Python\Python36-32\lib\pydoc.py", line 72, in <module>
    from traceback import format_exception_only
ImportError: cannot import name 'format_exception_only'

Process finished with exit code 1

【问题讨论】:

  • 单词“token”与python关键字冲突。所以改变你的文件名。

标签: python pycharm nltk


【解决方案1】:

文件“E:\test\token.py”,第 2 行,在 从 nltk.tokenize 导入 word_tokenize

Python 正在寻找另一个同名的脚本。 Python 对包中的脚本和您自己的脚本感到困惑,因为它从您所在的文件夹开始搜索。 因此,只需将您自己的脚本更改为另一个名称。

【讨论】:

    【解决方案2】:

    转到命令提示符(不一定是命令提示符。您也可以在 IDLE 中进行)。在 python 解释器中执行nltk.download(),然后下载all-corporabook。完成此操作后,运行您的程序。它应该可以工作。

    【讨论】:

    • 我已经安装了所有语料库和书籍,但错误仍然存​​在。
    猜你喜欢
    • 2021-12-08
    • 2019-11-27
    • 2015-02-05
    • 2019-12-19
    • 1970-01-01
    • 2019-12-30
    • 1970-01-01
    • 2017-06-20
    相关资源
    最近更新 更多