【问题标题】:How to reset OS:X installation of Python packages installed using sudo?如何重置使用 sudo 安装的 Python 包的 OS:X 安装?
【发布时间】:2016-07-09 10:41:20
【问题描述】:

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

如果一个人了解虚拟环境就不会发生这种情况,但是如果一个人在获得启发之前就这样做了,那么某人如何轻松删除所有 my 他们已安装的非虚拟环境包而不破坏任何默认安装?

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

【问题讨论】:

  • 要朋友?

标签: python macos pip virtualenv


【解决方案1】:

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

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

pip freeze

返回的所有内容都是用户安装。这意味着您可以“安全地”将其作为参数传递给 pip 卸载:

pip freeze | xargs sudo pip uninstall -y

这将卸载您机器上使用 pip 安装的所有项。

您可能会不小心在某些虚拟环境中使用它们,尤其是当您的 PYTHONPATH 变量设置为您的任何本地安装目录时。假设您没有将 PATH 变量作为虚拟环境的一部分覆盖,那么任何 pip 已安装的可执行程序包也将在虚拟环境中可见。

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

pip install virtualenvwrapper

【讨论】:

  • 这对我不起作用。但对于未来的观众来说,这可能是:#!/bin/bash for i in $( pip freeze ); do sudo pip uninstall -y $i done。找到它herehere
猜你喜欢
  • 2018-02-03
  • 2015-05-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-30
  • 1970-01-01
  • 2017-09-30
  • 1970-01-01
相关资源
最近更新 更多