[Python] Anacondaとpyenvとvirtualenvと.bash_profileと

  • 2
    Like
  • 0
    Comment

はじめに

Anacondaの環境でpyenv-virtualenvを使用していて
python -Vで確認してみるとPython versionが固定されてたり
terminalの行に(virtualenv_name)がずっとずっと表示されてdeactivateできなかったりしてませんか?
はい、私です。

で、Qiitaの紳士淑女な皆様方の記事を参考にやっとPythonの環境をコロコロ変更できるようになったので、
MEMO用にまとめた記事です。

参考にさせていただいた記事
Markdown記法 チートシート
HomebrewのインストールからpyenvでPythonのAnaconda環境構築までメモ
pyenv-virtualenvでディレクトリ単位のpython環境構築
virtualenv 基本的なコマンド使い方メモ
pyenvとvirtualenvで環境構築
データサイエンティストを目指す人のpython環境構築 2016
Anaconda で Python 環境をインストールする
【決定版】MacでPythonを使って『機械学習』を学ぶための環境構築

homebrewでpyenvのインストール

まずBrewでpyenvをinstallします。
terminalを開き

pyenvのインストール
$brew install pyenv

Brewない方は、まずBrewをinstallします。
Qiitaにお世話になった記事がたくさんありますのでご参照ください。

.bash_profileの編集

pyenvがinstallできましたら .bash_profile を弄ります。
Terminalを開き

.bash_profileに以下を記述
$echo 'export PYENV_ROOT="${HOME}/.pyenv"' >> ~/.bash_profile
$echo 'export PATH="${PYENV_ROOT}/bin:$PATH"' >> ~/.bash_profile
$echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

"{}"を忘れないでください、後々Anacondaがpyenvで設定されてるにも関わらず python --versionがおかしな感じになりますので。

catで.bash_profileの中身を確認
$cat ~/.bash_profile

.bash_profileを書き換えたら、terminalを一度閉じて開き直すなり、
source ~/.bash_profileするなりしてください。

pyenvでPythonのインストール

では、pyenvでPythonをinstallしていきます。
まずは、pyenvでinstallできるPythonのversionのlistを表示。

Python_version_list表示
$pyenv install -l

リスト表示されたPythonのversionの中から好きなのをinstallします。
もちろん、この記事を見ているということはAnacondaですよね?
2系と3系を両方ともinstallして検証してみてください。

Anacondaをpyenvでinstall
$pyenv install [python_version]
$pyenv install [another_python_version]

pyenvにinstallされたpythonのversionを確認しましょう。

pyenvにinstallされたpython_version確認
$pyenv versions

systemで設定されたpython_versionが複数表示されたらOKです、
またactivateされているpython_versionの頭には*が付いています。

pyenvでGlobalなpythonとlocalなpythonの設定

ここでおさらいですがpyenvでは
global(どのディレクトリにも反映)と
local(設定時のカレントディレクトリだけ反映)のpython_versionの設定ができます。

globalなpython_version設定
$pyenv global [python_version]

うまくglobalなpython_versionが設定されたか見てみましょう。

globalに設定されたpython_version確認
$pyenv global

先ほどに設定したpython_versionが表示されましたでしょうか?

次にlocalなpython_versionを設定してみます。

localなpython_version設定
$pyenv local [python_version]

カレントディレクトリにlocalなpython_versionが設定されたか確認します。

localに設定されたpython_version確認
$pyenv local

local設定されたpython_versionが表示されたと思いますが
一旦、localに設定されたpython_versionを外します。

local設定されたpython_versionを解除
$pyenv local --unset
pyenvのinstallリストで表示されるpythonversionの更新
$brew update
$brew upgrade pyenv

virtualenv

では、virtualenvの設定に入ります。
好きなpython_versionで仮想環境を構築して使えます。

仮想環境のpython_versionと名前を設定
$pyenv virtualenv [python_version] [virtualenv_name]

仮想環境virtualenv_nameがpyenvに追加されたか確認してみましょう。

pyenvにvirtualenv_nameが追加されたか確認
$pyenv versions

追加されたことを確認したら仮想環境virtualenv_nameをactivateしてみましょう。

仮想環境virtualenv_nameをactivate
$pyenv activate [virtualenv_name]

terminalの行頭に(virtualenv_name)が表示されましたか?
どこのディレクトリでもactivateできます。

では、次に仮想環境virtualenv_nameを解除します。

仮想環境virtualenv_nameをdeactivate
$pyenv deactivate

terminalの行頭に表示されていた(virtualenv_name)が消えたでしょうか?

最後に構築した仮想環境virtualenv_nameを削除します。

仮想環境virtualenv_nameを削除
$pyenv virtualenv delete [virtualenv_name]

MEMO終わり!!

昨日anaconda3-4.0.0のvirtualenvをlocalに設定した上で
python -Vすると3.6.0が表示されました、3.5.1のはずなのですが……
Markdown記法を初めて使うくらい超初心者なのですが
QiitaのKnowledgeの集積で多少まともにpythonで遊べるようになりました。
たくさんの良記事を共有してくださった皆様とQiitaに最大限の感謝をしております。