Python 使用pip为所有用户安装module ( ImportError: No module named ).

司雅畅
2023-12-01

问题来源:

    使用pip安装模块后,在 ~ 用户下测试Python脚本一切正常。但是服务端调用该脚本就不能执行。


分析:

    使用 sudo -u www-data python script.py 抛出 ImportError: No module named  "XXXX" 的错误。


解决方法:(参考 SO解决方案)(对 umask 感兴趣的可以参考 SO解决方案

    sudo pip uninstall XXXX

    umask 022

    sudo pip install XXXX

注: 有时候模块名字含有点号, 如ImportError: No module named bitcoinrpc.authproxy

       使用 sudo pip uninstall bitcoinrpc.authproxy 或 sudo pip uninstall bitcoinrpc 都不正确。

        此时可以使用 pip list 来查找模块名字

        $ pip list

        python-bitcoinrpc (0.1)

        $ sudo pip uninstall python-bitcoinrpc

    

 类似资料: