【问题标题】:Remove entry from sys.path从 sys.path 中删除条目
【发布时间】:2015-02-22 18:17:34
【问题描述】:

通过自制软件安装了一些 Python 模块后,自制软件告诉我运行以下代码。 我不再需要这些模块并且想要清理所有内容。我可以删除(我应该吗?)删除这个条目?以及如何删除它?

Python 模块已安装,但 Homebrew 的站点包尚未安装 在您的 Python sys.path 中,因此您将无法导入模块 这个公式安装。如果您打算使用这些模块进行开发, 请运行:

mkdir -p /Users/rain/.local/lib/python2.7/site-packages
echo 'import site; site.addsitedir("/usr/local/lib/python2.7/site-packages")' >> /Users/USERNAME/.local/lib/python2.7/site-packages/homebrew.pth

Mac OsX 10.10.2

【问题讨论】:

  • site 模块在python init 上加载时会读取pth 文件,因此上述脚本会导致将该目录放入本地自制python 中。您可以删除它,因为您要删除 python。有关 sys.path 工作原理的更多信息,请参阅此答案stackoverflow.com/a/38403654/850326

标签: python macos homebrew


【解决方案1】:

如果您没有使用任何 Homebrew 安装的 python 模块,您可以安全地删除 /Users/USERNAME/.local/lib/python2.7/site-packages/homebrew.pth

.pth 文件是向sys.path 添加路径的一种方式。 .pth 文件中作为路径的行被添加到sys.path; .pth 文件中以import 开头的行被执行。

homebrew.pth 文件中以import 开头的行使 Homebrew 前缀下的 site-packages 目录成为一个特殊的 site-packages 目录,这既将其添加到 sys.path 并确保它的任何 .pth 文件包含被读取和处理。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-21
    • 2013-06-27
    • 1970-01-01
    • 2014-12-15
    • 2017-05-26
    • 2011-12-20
    • 1970-01-01
    相关资源
    最近更新 更多