我在 OS X(10.10;只需使用 pip 维护)上安装了 Python,我的站点包位于
/Library/Python/2.7/site-packages
苹果的封装在
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
以及标准 Apple Python 安装
/System/Library/Frameworks/Python.framework/Versions/2.7
我没有做任何特别的设置,所以我认为它是相当标准的。我将我的包安装在站点包目录中,而我所做的唯一“自定义”操作就是删除我不需要的 Apple 包或我在站点包目录中维护的重复包。
一切正常,并且我所有的道路 https://stackoverflow.com/q/21236384/656912似乎正是我所期望的;然而当我得到一个令人困惑的结果
python -m site
虽然这表明sys.path
这对我来说很有意义
sys.path = [
'/Users/Rax',
'/Users/Rax/Documents/Projects/Coding/Python', # From PYTHONPATH
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip',
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7',
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin',
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac',
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages',
'/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python',
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk',
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old',
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload',
'/Library/Python/2.7/site-packages',
]
我也得到
USER_BASE: '/Users/Rax/Library/Python/2.7' (doesn't exist)
USER_SITE: '/Users/Rax/Library/Python/2.7/lib/python/site-packages' (doesn't exist)
ENABLE_USER_SITE: True
这对我来说没有意义。
不应该USER_SITE https://docs.python.org/2/library/site.html#site.USER_SITE be /Library/Python/2.7/site-packages
?如果是这样,我该如何设置它(我不能通过设置USER_SITE
to /Library/Python/2.7/
因为lib/python/
添加到路径中)?
这让我倍感困惑,因为/Library/Python/2.7/site-packages
已正确添加到我的sys.path
(我不知道从哪里来)因为
import pkg_resources
pkg_resources.__file__
yields /Library/Python/2.7/site-packages/pkg_resources.pyc
.