【问题标题】:Cannot import pip installed package as non-root user无法以非 root 用户身份导入 pip 安装的包
【发布时间】:2020-05-07 06:02:29
【问题描述】:

无法将作为 root 安装的非 root 导入 python 模块。

我已经以两种方式安装了flask_babelex 包:

pip3 install --user flask_babelex
pip3 install flask_babelex 

当我尝试import时工作正常:

[root@dev-apache ~]# python3 -c "import flask_babelex"

如果我以非 root 用户身份运行,它将无法正常工作:

[root@dev-apache ~]#  su - apache
-bash-4.2$
-bash-4.2$ python3 -c "import flask_babelex"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'flask_babelex'

我尝试将权限更改为site-packages,但没有用:

/usr/local/lib/python3.6/site-packages

任何解决方法建议?

【问题讨论】:

  • 用这个命令检查which python3,很可能,这将是两个不同的python3安装。这就是问题所在。
  • 我检查了路径,没有问题。 [root@dev-apache ~]# which python3 /bin/python3
  • 非root终端的which python怎么样?
  • [apache@dev-apache ~]# which python /bin/python.
  • 终于,它开始工作了。这似乎是一个许可问题。我将权限更改为chmod 777 -R /usr/local/lib/python3.6,chmod 777 -R /usr/local/lib/python2.7。但是,我不确定这是否正确。

标签: python pip centos


【解决方案1】:

您可以通过运行来确保使用正确的 python 环境安装软件包

python3 -m pip install flask_babelex

这将在您的python3 使用的环境中专门安装软件包

【讨论】:

    猜你喜欢
    • 2016-10-18
    • 1970-01-01
    • 1970-01-01
    • 2017-07-14
    • 2012-01-30
    • 1970-01-01
    • 1970-01-01
    • 2016-04-11
    • 2021-09-23
    相关资源
    最近更新 更多