我四处读了很多关于sudo pip
是一个非常糟糕的习惯/解决方案的内容。人们给出的一些理由是:
我找到的替代方案是使用pip
运行--user
(例如pip install --user package
)。我看到Debian中的python工作有点不同(我有Stretch),主要是因为使用的路径(--user
在Debian中是标准的,如果省略,顺便说一句)。总之,我发现了很多不一致的东西。
理所当然地认为使用sudo
和pip
是错误的,有人可以解释我为什么,而且最重要的是 时错了吗?我遇到的主要问题都与权限有关,所以我的猜测是sudo
"只是"毁灭所有权。
除了使用--user
或virtualenv之外还有其他解决方案吗?
答案 0 :(得分:3)
除非您希望或 全局安装二进制文件,服务或依赖项,否则您不希望使用sudo pip
。正如你猜测的那样,它会全局安装你的依赖关系,这可能会在开发过程中造成不一致。
现在更常规的做法是使用virtualenv来安装依赖项。这样,您使用安装执行的任何操作都是Python的特定virtualenv实例的本地实现。