Mac 上 python 的site-packages目录出现了两个?
最近我的mac上pip install <something>
需要用sudo
. 以前是不需要的.
最近动过virtualenv,pyenv跟pycharm.
shell里面用python --version
得到的结果是2.7.9
也就是homebrew
的.
现在系统里有两个site-packages. 里面都有很多modules
/usr/local/lib/python2.7/site-packages
/Library/Python/2.7/site-packages
因为pycharm上一些系统的包跳转需要使用/usr/bin/python
做解释器才行. 所以当初动了一下.
现在, 我要怎么做才能让pip不需要sudo, 新pip install的包装到homebrew的site-packages下面(/usr/local/lib/python2.7/site-packages)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
先敲入 type python 确认看看 python bin 文件路径。
/usr/bin/python 可以建个软连接到 /usr/local/bin/python 这样就不必新装一个 python。
pip需要sudo是因为你添加的包需要用到系统权限,比如panda,numpy。我在linux下,同样pip安装包,有些不需要sudo,有些是需要sudo的。是要看你的包安装的位置或者安装该包时需要调用的系统命令来决定的。
mac自带了一个python,homebrew安装的python和系统这个是在不同位置的,所以会有两个python。
加--user, 比如
pip install scipy --user
这样子虽然不会装到
/usr/local/lib/python2.7/site-packages
, 但至少是可见的.针对有两个python的问题, 鉴于你使用mac, 用port来管理python比brew要方便.
比如安装多个版本:
port install python24 python27
选择
python27
的pip
:port select --set pip pip27
\详见这里https://truongtx.me/2014/02/25/mac-os-install-python-pip-virtualenv-us...