Yosemite(OS X 10.10)升级包括Python 2.7.6,与苹果系统更新一样,这个过程似乎完全取代了中的系统包目录
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
这一次,该过程似乎完全省略了site.py
。我的理解是,这个文件对Python的功能至关重要,尤其是包搜索路径的正确构建;但是我的Python(只使用Apple系统Python和site-packages
中的附加包)运行良好,并且我的路径与升级前保持不变。
Python的正常运行是否不再需要site.py
?它被移到另一个地方了吗?
site.py
仍在使用。你只是找不到合适的位置:
>>> import site
>>> print site.__file__
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site.pyc
/Extras
结构似乎完全由非标准库包组成,例如,苹果为自己使用而安装的包,这些包不包含在标准Python中。
如果在以前的OS X版本中是site.py
文件,则很可能是setuptools
安装的文件;10.10附带了setuptools
1.1.6,它早就摆脱了该文件中包含的黑客攻击。
如果python的行为没有改变,并且sys.path
包含指向site-packages
文件夹的路径,那么应该没问题。如果你使用解释器-S
选项,site-packages
文件夹的路径不会显示在sys.path
中,所以你可以测试它。我建议你在系统中搜索该文件。如果它没有显示,请确保您可以看到隐藏的文件,以防由于某种原因被隐藏。
site.py文档
编辑:已在评论中解决,但希望提供官方答案。