Dragon Arrow written by Tatsuya Nakaji, all rights reserved animated-dragon-image-0164

Python環境構築(python + pip + pyenv)

イメージ
May 07, 2019

Python環境構築


やること: pythonインストール & pipインストール(pythonのパッケージ管理ツール) & pyenvインストール(pythonのバージョンを簡単に切り替えることができるようにしてくれるツール)

 

1.pythonインストール

$sudo brew install python


2. pipインストール

Python のパッケージのインストーラーを使用する

$sudo easy_install pip


pythonはバージョン2系と3系があり, 2系を動かすときは pythonコマンド($ python sample.py や $ python など)を 3系を動かすときはpython3コマンド($ python3 sample.py や $ python3 など) とかき分けねばならず、気色が悪いので、pyenvをインストールして初めからバージョン指定をしてしまおうというわけです(いつでもバージョンを切り替えられます)


3.pyenvのインストール


pyenvとは

pythonのバージョンを簡単に切り替えることができるようにしてくれるツールです。2系列と3系列との切り替えに便利です。また、ディレクトリごとにpythonのバージョンを切り替えることができます。

pyenvのインストール

ではまず、 pyenvをインストールしましょう。gitから持ってくる場合上のコマンドを、brewが使える場合は下のコマンドを利用してもできます。

$ brew install pyenv

bash_profileの編集

次にpyenvのパスを通すために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

またはvimを使ってbash_profileに直書きしても構いません。

$ vim ~/.bash_profile
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

最後にbash_profileの保存を適用します

$ source ~/.bash_profile

pyenvでpythonをインストール

バージョン切り替えを体験するために2つほどバージョンが違うpythonをインストールしてましょう。インストールできるか確認をしたければ3つめのコマンドを利用すると一覧が確認できます。

$ pyenv install 2.7.15
$ pyenv install 3.7.3
$ pyenv install --list  

pyenvでバージョンを切り替えてみる

バージョンの切り替えをしてみます。localの場合は今いるディレクトリに、globalの場合は全体に反映されます。

$ pyenv local 2.7.15
$ pyenv global 3.7.3

ここできちんと変更が反映されているか確認するためpythonのバージョンを調べます。

$ python --version
Python 2.7.15

このように変更が反映されていれば問題ありません。
反映されていなければ下の記事をお試しください。

pyenvでのpythonのバージョンがpython -vと違う時の対処法

$ pyenv versions
  system
* 2.7.15 
  3.7.3
$ python --version                                                                                             
Python 3.7.3 (pyenvが適用されてない)

その場合、whichコマンドでパスを表示してみてください。

$ which python
/usr/bin

このようになっていたら、

pyenvがインストールされている/usr/localよりPythonがデフォルトでインストールされている/usr/binの優先度が高くなっているので、以下のように編集してください。

$ vim /etc/paths
/usr/local/bin
/usr/bin
/bin
/usr/local/sbin
/usr/sbin
/sbin

ここで、順番大事です!優先度が高いものが上に来るようにしており、パスがusr/binよりも/usr/localを優先されるようになります

確認のためwhichコマンドをもう一度入力すると

$ which python
/usr/local/bin/pyenv

のようになるはずです。
最後にもう一度pyenvのpythonのバージョンがpythonのバージョンと一致するか確かめてみてください。


python3 って打たなくてもバージョン3が起動するようになった!!