Lak*_*hor 4 python macos packages pip pythonpath
我在 Mac OS X 上,我听说为了避免可能导致 OS X 使用的 python 文件出现问题的包的全局安装(使用 sudo),安装 python 包的路径必须与 OS X 的路径不同.
目前 python 可执行文件安装在:
/usr/local/bin/
Run Code Online (Sandbox Code Playgroud)
Pip 在这里安装模块:
/usr/local/lib/python2.7/site-packages
Run Code Online (Sandbox Code Playgroud)
Python从这里使用:
/usr/local/bin/python
Run Code Online (Sandbox Code Playgroud)
这些路径安全吗?
如果您在 OS X 上,您还应该在/usr/bin以下位置安装 Python :
$ which -a python
/usr/local/bin/python
/usr/bin/python
Run Code Online (Sandbox Code Playgroud)
如果您正在使用brew,第一个python应该是一个符号链接:
$ ls -hl $(which python)
lrwxr-xr-x 1 user admin 34B Jun 23 16:53 /usr/local/bin/python -> ../Cellar/python/2.7.11/bin/python
Run Code Online (Sandbox Code Playgroud)
如果您不使用brew,则必须向我们解释您是如何安装python.
你还应该至少有两个site-packages:
$ find /usr -name 'site-packages'
/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
/usr/local/lib/python2.7/site-packages
Run Code Online (Sandbox Code Playgroud)
如果您python使用安装brew,您还应该拥有pip:
$ which pip
/usr/local/bin/pip
Run Code Online (Sandbox Code Playgroud)
您可能应该将其升级到最新版本pip:
$ pip install --upgrade pip
Run Code Online (Sandbox Code Playgroud)
python使用安装包应该是安全的,/usr/local/bin/pip因为它们将安装在/usr/local/lib/python2.7/site-packages. 该/usr/local路径专用于本地软件。此外,brew将其文件安装到/usr/local,因此如果您正在使用brew,则您已经在那里安装了文件。
我不知道为什么有些人说不要在全球范围内安装任何软件包。我从未见过解释为什么这是一个坏主意的参考资料。如果多个用户需要同一个包,全局安装更有意义。
当我第一次开始使用 时virtualenv,它并不总是像我预期的那样工作。我有一台有多个用户需要的机器requests,由于 存在问题virtualenv,我最终使用pip.
双方virtualenv并pip已经提高了很多,因为我使用他们第一次开始,我可以看到如何使用它们可以防止一些问题。如果您正在开发需要最新版本软件包的新软件,则virtualenv允许您安装该软件包而不影响系统的其余部分。但是,我仍然不明白为什么全局安装软件包是一个坏主意。
| 归档时间: |
|
| 查看次数: |
8872 次 |
| 最近记录: |