我最近一直在阅读的所有蟒蛇叮当告诉我要做这样的事情:
pip install tornado
pip install requests
每次我这样做都会遇到permission denied
警告。但是当我sudo
时,一切通常都有效。
是否需要sudo?如果是这样,为什么这么多教程说明没有提到呢?
在ruby中,我们可以使用Rbenv或RVM进行安装,这两者都不需要使用sudo
。在python中有任何等价物吗?或者暗示您应该始终sudo
?
答案 0 :(得分:8)
pip
需要获得将库写入其使用目录的权限。如果您没有用户权限,则会出现此问题,因此pip
失败。使用sudo
解决了这个问题,但并不理想。
您不应该使用sudo运行代码,因为您不知道库中的内容,如果它包含恶意代码,则可能会对您的计算机造成严重损害。
您可以通过确保您有权写入pip
设置使用的目录来解决此问题。
更好的选择(正如您在评论中建议的那样)是使用virtualenv,这样您就可以使用pip
而无需sudo
。请确保您不使用sudo
创建此virtualenv,但因为您没有权限以普通用户的身份向其写入。