【问题标题】:How to use importlib.metadata from Python 3.8如何使用 Python 3.8 中的 importlib.metadata
【发布时间】:2019-11-21 11:18:21
【问题描述】:

我一直在尝试理解 Python 3.8 中的 importlib.metadata 库,但似乎无法弄清楚为什么它不起作用。 根据文档https://docs.python.org/3.8/library/importlib.metadata.html,在安装 Python3.8 和 wheel 包(通过 pip)之后:

>> from importlib.metadata import version  
>> version('wheel') 
ImportError: cannot import name 'MetadataPathFinder' from 'importlib.metadata'

【问题讨论】:

    标签: python-importlib python-3.8


    【解决方案1】:

    运行以下命令对我的情况有帮助 python -c "import importlib.metadata, shutil, pathlib; file = pathlib.Path(importlib.metadata.__file__); str(file).endswith('__init__.py') and shutil.rmtree(file.parent) and print('removed', file.parent)"

    取自https://bugs.python.org/issue38342#msg353736

    【讨论】:

      【解决方案2】:

      找到解决方案(Mac 和 pyenv):

      brew update && brew upgrade pyenv
      

      现在应该有 3.8.0 可用(而不是在我的情况下 3.8-dev)

      pyenv install 3.8.0
      pyenv global 3.8.0
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-05-27
        • 2020-12-13
        • 1970-01-01
        • 1970-01-01
        • 2020-04-29
        • 2021-12-26
        • 1970-01-01
        • 2022-12-27
        相关资源
        最近更新 更多