我如何在 OSX 上安装现有的 pyenv 安装 Anaconda?
How can I install Anaconda aside an existing pyenv installation on OSX?
如果在其他地方很容易找到这个问题,我深表歉意,但尽管我发现了一些带有 pyenv 和 Anaconda 解释的帖子,none 专门解决了这个问题。然而,我常常是个白痴。
在 Mac OSX (Mojave 10.14.6) 我通过 Homebrew 安装了 pyenv
brew install pyenv
而且我很乐意安装 Python 版本并在
之间切换
pyenv install ...
和
pyenv global ...
我通常使用 VS Code 作为我的 IDE。
我现在需要在 Anaconda 中做一些工作。我以前没用过。我可以简单地安装 Anaconda via the distribution site 并使用它的导航器,当我需要我的旧 python 版本时使用 pyenv 和 VS Code,或者我安装 Anaconda 时会不会有冲突?如果有冲突,在 OSX 上是否有通往 运行 的路径?
我当然可以安装它看看会发生什么,如果一团糟的话可以从备份中恢复。但我希望 pyenv / Anaconda 大师可能有一些明智的建议,可以节省我数小时的清理时间。
提前致谢!
对 conda 不是很熟悉,但我确实经常使用 pyenv。
Pyenv 有自己的 virtualenv manager 供您使用。您可以随时检查哪个 virtualenv 版本处于活动状态:
pyenv versions
您应该会看到如下内容:
system
20190814_125309
* 3.7.4 (set by /home/tzhuang/.pyenv/version)
3.7.4/envs/20190814_125309
3.7.4/envs/buildmaster-sandbox
3.7.4/envs/HEAD
3.7.4/envs/myenv
3.7.4/envs/sandbox
buildmaster-sandbox
HEAD
myenv
sandbox
其中 *
表示当前活动的 virtualenv(这可以像您提到的那样使用 pyenv global 进行设置)。您可以手动激活任何 virtualenv:
pyenv shell
例如
pyenv shell sandbox
然后 运行ning pyenv versions
给出:
system
20190814_125309
3.7.4 (set by /home/tzhuang/.pyenv/version)
3.7.4/envs/20190814_125309
3.7.4/envs/buildmaster-sandbox
3.7.4/envs/HEAD
3.7.4/envs/myenv
3.7.4/envs/sandbox
buildmaster-sandbox
HEAD
myenv
* sandbox
将任何你想要的包安装到一个新的 virtualenv 而不是全局 virtualenv 中通常是个好主意。如果您 运行 进入任何问题,它会使调试 environment/dependency 问题变得更容易。
存在冲突,导致 pyenv
和 conda
默认都尝试公开全局 Python 环境。
我一直在同时使用这些工具,我找到的最佳解决方案是
- 始终初始化
pyenv
,使用pyenv global
设置的Python作为默认值Python
- 仅公开命令
conda
但不要从中激活任何环境
详情
由于pyenv
已经安装在你的机器上,你只需要安装Anaconda。
brew cask install anaconda
初始化 conda
而不暴露来自 conda
的 "base" 环境。
# init conda, the following command write scripts into your shell init file automatically
conda init
# disable init of env "base"
conda config --set auto_activate_base false
完成。
注意:此设置后,默认Python是pyenv global
设置的那个。使用 pyenv
和 conda
分别管理环境。
管理虚拟环境的示例。
# virtual environments from pyenv
pyenv install 3.6.9
pyenv virtualenv 3.6.9 new-env
pyenv activate new-env
pyenv deactive
# You can also use `pyenv local`
# virtual environments from conda
conda create -n new-env python=3.6
conda env list
conda activate new-env
conda deactivate
pyenv
的默认环境位置是 ~/.pyenv/versions
。
conda
的默认环境位置,检查 conda info
的输出。
扩展阅读
如果在其他地方很容易找到这个问题,我深表歉意,但尽管我发现了一些带有 pyenv 和 Anaconda 解释的帖子,none 专门解决了这个问题。然而,我常常是个白痴。
在 Mac OSX (Mojave 10.14.6) 我通过 Homebrew 安装了 pyenv
brew install pyenv
而且我很乐意安装 Python 版本并在
之间切换pyenv install ...
和
pyenv global ...
我通常使用 VS Code 作为我的 IDE。
我现在需要在 Anaconda 中做一些工作。我以前没用过。我可以简单地安装 Anaconda via the distribution site 并使用它的导航器,当我需要我的旧 python 版本时使用 pyenv 和 VS Code,或者我安装 Anaconda 时会不会有冲突?如果有冲突,在 OSX 上是否有通往 运行 的路径?
我当然可以安装它看看会发生什么,如果一团糟的话可以从备份中恢复。但我希望 pyenv / Anaconda 大师可能有一些明智的建议,可以节省我数小时的清理时间。
提前致谢!
对 conda 不是很熟悉,但我确实经常使用 pyenv。
Pyenv 有自己的 virtualenv manager 供您使用。您可以随时检查哪个 virtualenv 版本处于活动状态:
pyenv versions
您应该会看到如下内容:
system
20190814_125309
* 3.7.4 (set by /home/tzhuang/.pyenv/version)
3.7.4/envs/20190814_125309
3.7.4/envs/buildmaster-sandbox
3.7.4/envs/HEAD
3.7.4/envs/myenv
3.7.4/envs/sandbox
buildmaster-sandbox
HEAD
myenv
sandbox
其中 *
表示当前活动的 virtualenv(这可以像您提到的那样使用 pyenv global 进行设置)。您可以手动激活任何 virtualenv:
pyenv shell
例如
pyenv shell sandbox
然后 运行ning pyenv versions
给出:
system
20190814_125309
3.7.4 (set by /home/tzhuang/.pyenv/version)
3.7.4/envs/20190814_125309
3.7.4/envs/buildmaster-sandbox
3.7.4/envs/HEAD
3.7.4/envs/myenv
3.7.4/envs/sandbox
buildmaster-sandbox
HEAD
myenv
* sandbox
将任何你想要的包安装到一个新的 virtualenv 而不是全局 virtualenv 中通常是个好主意。如果您 运行 进入任何问题,它会使调试 environment/dependency 问题变得更容易。
存在冲突,导致 pyenv
和 conda
默认都尝试公开全局 Python 环境。
我一直在同时使用这些工具,我找到的最佳解决方案是
- 始终初始化
pyenv
,使用pyenv global
设置的Python作为默认值Python - 仅公开命令
conda
但不要从中激活任何环境
详情
由于pyenv
已经安装在你的机器上,你只需要安装Anaconda。
brew cask install anaconda
初始化 conda
而不暴露来自 conda
的 "base" 环境。
# init conda, the following command write scripts into your shell init file automatically
conda init
# disable init of env "base"
conda config --set auto_activate_base false
完成。
注意:此设置后,默认Python是pyenv global
设置的那个。使用 pyenv
和 conda
分别管理环境。
管理虚拟环境的示例。
# virtual environments from pyenv
pyenv install 3.6.9
pyenv virtualenv 3.6.9 new-env
pyenv activate new-env
pyenv deactive
# You can also use `pyenv local`
# virtual environments from conda
conda create -n new-env python=3.6
conda env list
conda activate new-env
conda deactivate
pyenv
的默认环境位置是 ~/.pyenv/versions
。
conda
的默认环境位置,检查 conda info
的输出。