3

仮想環境を管理するために、 pyenv+virtualenvAnacondaの両方をシステムにインストールしています。

私の .zshrc ファイルは次のようになります。

# Load pyenv automatically:
export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

# added by Anaconda3 4.2.0 installer
export PATH="$HOME/anaconda3/bin:$PATH"

pyenv特定のフォルダーで、ローカル仮想環境をセットアップしました

$ pyenv local test-env

pyenvそのフォルダー内の virtual-env を一覧表示すると、次のようになります。

$ pyenv versions
system
2.7.12
2.7.12/envs/test-env
* test-env (set by /home/<path>/.python-version)

pyenvしかし、Python v2.7.12 でセッションを開く代わりに python をロードすると (仮想環境がロードされているため、予想どおり)、次のようになります。

$ python
Python 3.5.2 |Anaconda custom (64-bit)| (default, Jul  2 2016, 17:53:06) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

明らかに、Anaconda プラットフォームは私のpyenv仮想環境の間に入り込んでいます。conda環境を一覧表示すると、次のようになります。

$ conda-env list
# conda environments:
#
root                  *  /home/<user>/anaconda3

export PATH="$HOME/anaconda3/bin:$PATH"行をコメントアウトすると、pyenv期待どおりに機能します。

互いに競合することなく、これらの両方のマネージャーを維持する方法はありますか?

4

1 に答える 1