如何重置 OS:X 安装使用 sudo 安装的 Python 包?

How to reset OS:X installation of Python packages installed using sudo?

想象一下,一个人没有意识到 Python 中的虚拟环境是如何工作的,并且使用 sudo pip install 为 OS:X 安装了很多包。现在他们面临着管理包版本的问题。

如果一个人了解虚拟环境,这将永远不会发生,但如果一个人在开悟之前就这样做了,那人怎么能轻易地删除所有 my 他们的非虚拟环境包已安装,没有破坏任何默认安装?

请注意,这包括几个程序(例如 nosetests)并且不限于专门的库。看来我可以使用 --no-site-packages 创建一个虚拟环境,并且至少可以绕过包(假设我擦除我的 PYTHONPATH)。但是我的实际 PATH 似乎也让我看到了我安装的可执行文件。

我的 OS:X 基本安装中没有任何东西是用 pip 安装的。这意味着您可以从 OSX 上的 pip 卸载 一切 而无需 "worrying" - 就实际系统性能而言。如果您依赖全球 pip 包,这可能会干扰您的日常活动。

您可以通过查看完整列表来验证您安装了哪些软件包:

pip freeze

returns 中的所有内容都是用户安装的。这意味着您可以 "safely" 将其作为参数传递给 pip uninstall:

pip freeze | xargs sudo pip uninstall -y

这将卸载 所有 项在您的计算机上安装的 pip。

您可能不小心在某些虚拟环境中使用了这些,特别是当您的 PYTHONPATH 变量设置为任何本地安装目录时。假设您没有将 PATH 变量覆盖为虚拟环境的一部分,任何 pip 安装的可执行包也将在虚拟环境中可见。

就我而言,我唯一需要重新安装的项目是 virutalenv 包装器:

pip install virtualenvwrapper