【问题标题】:import error: cannot import name "defautdict" from "collection.abc" how to solve this?导入错误:无法从“collection.abc”导入名称“defautdict”如何解决?
【发布时间】:2022-06-30 02:49:26
【问题描述】:

这是我的错误堆栈 - 我已将我的代码从from collections import Mapping 更改为from collections.abc import Mapping,因为它给出了一个导入错误,但在此之后它现在给出了这个错误-

 File "C:\Users\ankit\Desktop\yt-sum-flask\summarizer.py", line 2, in <module>
    from gensim.summarization.summarizer import summarize
  File "C:\Users\ankit\Desktop\yt-sum-flask\env\lib\site-packages\gensim\__init__.py", line 5, in <module>
    from gensim import parsing, corpora, matutils, interfaces, models, similarities, summarization, utils  # noqa:F401
  File "C:\Users\ankit\Desktop\yt-sum-flask\env\lib\site-packages\gensim\corpora\__init__.py", line 12, in <module>
    from .dictionary import Dictionary  # noqa:F401
  File "C:\Users\ankit\Desktop\yt-sum-flask\env\lib\site-packages\gensim\corpora\dictionary.py", line 11, in <module>
    from collections.abc import Mapping, defaultdict
ImportError: cannot import name 'defaultdict' from 'collections.abc' (C:\Users\ankit\AppData\Local\Programs\Python\Python310\lib\collections\abc.py)

这是我的要求.txt

certifi==2022.5.18.1
charset-normalizer==2.0.12
click==8.1.3
colorama==0.4.4
Cython==0.29.28
filelock==3.7.0
Flask==2.1.2
gensim==3.8.0
huggingface-hub==0.6.0
idna==3.3
itsdangerous==2.1.2
Jinja2==3.1.2
joblib==1.1.0
MarkupSafe==2.1.1
nltk==3.7
numpy==1.22.3
packaging==21.3
pyparsing==3.0.9
PyYAML==6.0
regex==2022.4.24
requests==2.27.1
scipy==1.8.1
smart-open==6.0.0
tokenizers==0.12.1
torch==1.11.0
tqdm==4.64.0
transformers==4.19.2
typing_extensions==4.2.0
urllib3==1.26.9
Werkzeug==2.1.2
youtube-transcript-api==0.4.4

如何解决这个错误?

【问题讨论】:

  • Mappingdefaultdict 来自两个不同的文件。

标签: python


【解决方案1】:

也许尝试从集合导入 defaultdict

【讨论】:

  • 那么它给出了这个错误ImportError: cannot import name 'Mapping' from 'collections' (C:\Users\ankit\AppData\Local\Programs\Python\Python310\lib\collections_init_.py)
  • from collections import defaultdict from collections.abc import Mapping try 2 import
  • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
【解决方案2】:

变化:

from collections.abc import Mapping, defaultdict

到:

from collections import defaultdict
from collections.abc import Mapping

Mappingdefaultdict 不再在同一个模块中,因此必须分别导入。

【讨论】:

    猜你喜欢
    • 2022-06-17
    • 2018-09-07
    • 1970-01-01
    • 1970-01-01
    • 2019-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-02
    相关资源
    最近更新 更多