我已经在我的 Mac 中安装了 pyenv 来管理不同的 python 版本。
之前,我有系统默认的 python 2.7/Library/Frameworks/Python.framework/Versions/2.7/
位于/usr/local/bin/python3
现在,我安装了位于 /Users/hao/.pyenv/shims/python2
我只是好奇,当我想使用“pip”命令安装某个库时,如何确保将库安装到正确的 python 中?例如,我想使用 'pip' 将 Torch 或 tensorflow 安装到 pyenv python 2.7.14 中。但不想将它们安装到系统默认 python 中。另外,如何更改pip3版本?
这里我使用which pip
and which pip3
,结果是:
haos-mbp:~ hao$ which pip
/Users/hao/.pyenv/shims/pip
haos-mbp:~ hao$ which pip3
/usr/local/bin/pip3
Run Code Online (Sandbox Code Playgroud)
小智 9
我正在分享我的真实经历,
即使我在我的机器上安装了 python3.6,我的系统默认指向 python2.7
但是当我尝试下载python3.6的新包时,却使用默认的python2.7下载
所以我遇到了这个pyenv,
我安装了pyenv
安装后
$ pyenv install --list
$ pyenv global
Run Code Online (Sandbox Code Playgroud)
指向默认系统(python2.7)
安装了python3.6
$ pyenv install 3.6.9
Run Code Online (Sandbox Code Playgroud)
从python2.7更改为python3.6
$ pyenv global 3.6.9
Run Code Online (Sandbox Code Playgroud)
这里,我们要注意的是,安装pyenv时默认会安装pip 。
使用pip命令我安装了 python3.6 所需的包,而没有添加像pip3这样的后缀号。
$ pip install pyOpenSSL
Run Code Online (Sandbox Code Playgroud)
假设如果你想安装与python2.7相关的包然后更改python环境
$ pyenv global 2.7.0
Run Code Online (Sandbox Code Playgroud)
您可以使用 pip 而不是使用 pip3 安装所需的包
pip install package-name
Run Code Online (Sandbox Code Playgroud)
小智 5
使用 时pyenv
,您应该能够在您工作的目录中设置您的“本地”版本,然后pip
将依赖此版本。
所以在你的情况下:
pyenv local 2.7.14
pip install package-name
Run Code Online (Sandbox Code Playgroud)
在pyenv
此处查看有关命令的更多信息:https : //github.com/pyenv/pyenv/blob/master/COMMANDS.md
但我确实认为这里缺少的主要部分是一个“虚拟环境”,以保持每个项目的 Python 包独立(即使它们共享相同的 Python 版本)。根据您的要求,这不是必需的,但这是公认的最佳实践。有关更多信息,请参阅此处的 Python 文档。
归档时间: |
|
查看次数: |
24459 次 |
最近记录: |