执行pip安装时的ImportError

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了执行pip安装时的ImportError相关的知识,希望对你有一定的参考价值。

在我的虚拟环境中,我正在尝试执行'pip install'。使用setup.py,例如:

from setuptools import setup
import pbr

... some functions ...

setup(
    name='example',
    setup_requires=['pbr'],
    py_modules=['example'],

    entry_points='''
        [console_scripts]
        example=example:main
    ''',
)

问题是我得到以下错误ImportError:没有名为pbr的模块

这看起来很合法,因为我没有在我的虚拟环境中安装pbr但是我认为指定'setup_requires'可以做到这一点......:/

有人理解为什么这不起作用并知道如何解决它? :)

答案

该脚本在运行import pbr之前执行setup(),因此setup()没有机会安装pbr

修复是在运行pbr之前不导入setup()。见https://docs.openstack.org/pbr/latest/user/using.html

#!/usr/bin/env python

from setuptools import setup

setup(
    setup_requires=['pbr'],
    pbr=True,
)

以上是关于执行pip安装时的ImportError的主要内容,如果未能解决你的问题,请参考以下文章

Dask 的默认 pip 安装给出“ImportError: No module named toolz”

当我执行 pip --version 时,它将错误显示为 ImportError: No module named pyparsing

为啥我在安装 pip 后立即收到 ImportError: No module named pip '?

成功安装 pip 后的 ImportError [重复]

ImportError:尝试安装软件包时没有名为 pip 的模块

pip 安装使用 ImportError: No module named setuptools