想象一下,人们没有意识到虚拟环境是如何在Python中工作的,并且使用sudo pip install
for OS:X安装了很多包,现在他们在管理包版本时遇到了问题。
如果一个人了解虚拟环境,这种情况就永远不会发生,但是如果一个人在受到启发之前就这样做了,那么他如何能够轻松地删除所有安装的非虚拟环境包,而不破坏任何默认安装?
注意,这包括几个程序(如notests),并且不限于独占库。似乎我可以用--no-site-packages
创建一个virtualenvironment,这至少可以绕过包(假设我清除了PYTHONPATH)。但我的实际路径似乎也让我看到了我安装的可执行文件。
在我的OS:X基本安装中,没有任何东西是用pip安装的。这意味着您可以从OSX上的pip卸载所有内容,而不必“担心”-就实际系统性能而言。如果您依赖于全局pip包,这可能会干扰您的日常活动。
您可以查看完整列表来验证已安装的软件包:
返回的所有内容都是用户安装。这意味着您可以“安全地”将其作为参数传递给pip uninstall:
这将卸载机器上安装了pip的所有项。
在某些虚拟环境中,您可能会意外地使用它们,特别是当您的
PYTHONPATH
变量设置为任何本地安装目录时。pip安装的任何可执行包也将在虚拟环境中可见,前提是您没有覆盖作为虚拟环境一部分的PATH
变量。在我的例子中,我只需要重新安装virutalenv包装器:
相关问题 更多 >
编程相关推荐