プログラミング入門者のためにPython環境構築 (Mac OS)

#概要

Pythonは非常に有名で人気の高いプログラミング言語です。

その容易な文法から初めてプログラミングを学ぶ言語として適しています。

今回はそんな素敵なPythonの詳しい語句説明と共にMacでpyenvとpyenv-vertuakebvを使い環境構築をし、ちょっとしたプログラミングを動かしてみます。

なお、語句説明など読まなくても目的は達成できるので、ご自身の状況に合わせて柔軟な読み方で進めていってください。



#前提

Homebrewがインストール済みであることを前提としてます。

ない方は下の記事で、Hombrewをインストールしてください。

[プログラミング入門者のための「Homebrewインストール」](http://naggi-blog.com/2016/10/programing/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E5%85%A5%E9%96%80%E8%80%85%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AE%E3%80%8Chomebrew%E3%80%8D%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC/)

なお、記事にあるコマンドは、"$"の前を抜いたものをご自身のパソコンに打ってください。

それと、#の次にある文字は補足なのでコマンドではありません。

例

以下のコマンドをターミナルに打ってください。

```console
Naggis-MacBook-Air:~ naggigoishi$ ls #どんなファイルがあるか見るコマンド
Applications Documents Dropbox Movies Pictures macports tensorflow
Desktop Downloads Library Music Public node_modules
```

上記の例の場合だと、僕がみなさんにターミナル打っていただきたいコマンドは

```console
ls
```
のみです。そして、その下にある

```console
Applications Documents Dropbox Movies Pictures macports tensorflow
Desktop Downloads Library Music Public node_module
```
これらが、出力結果です。

#インストール

さて、早速初めて行きましょう。

実はmacをお持ちの皆さん、Pythonは標準であなたのmacに入っています。

ですが、ここでは、最新のバージョンのPythonをインストールしたり、バージョンを簡単に切り替えたりするための環境構築をしていきます。

そこで、バージョンの管理を簡単にしてくれるパッケージ、「pyenv」をダウンロードしたいと思います。(python environment 略してpyenvだと思っている)

pyenvのインストール

以下のコマンドをターミナルで順番に実行してください。

```console
$ brew update #Homebrewをアップデートする
$ brew instal pyenv #pyenvをインストール
```
##パスを通す

```console
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile #PYENV_ROOTという環境変数を作る
$ echo 'export PATH="$PYENV_ROOT/shims:$PATH"' >> ~/.bash_profile #PATHという環境変数に追加
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile #shimsとautocompletionが動くようにする。
$ source ~/.bash_profile #bash_profileを読み込む
```

以上で、pyenvが使えるようになりました。

インストールできているかの確認として、pyenvのバージョンを見てみましょう。

```console
$ pyenv --version #「--version」はversionを確かめるためのオプション。「-v」でも可
pyenv 1.0.2
```

現在の僕の場合では、1.0.2でした。このように出力されていれば、成功です。

数字は違ってても構いません。

横のコメントアウトをみてもなんのこっちゃかわからないと思うので、

これらが何をしているのかを、詳しく、まとめたものを下に貼っときます。

[Linux入門 ~「パスを通す」とは~](https://qiita.com/Naggi-Goishi/items/2c49ea50602ea80bf015)

#Pythonのインストール

これまでの作業で、好きなPythonを簡単にインストール出来るようにしてきました。

では、いよいよ、Pythonをインストールしましょう。

以下のコマンドで、インストール出来るものを確かめてみましょう。

```console
$ pyenv install -list #pyenvでインストール出来るもののリストを表示
Available versions:
2.1.3
2.2.3
...
2.7.12
...
3.0.1
...
3.5.2
3.6.0b1
3.6-dev
anaconda-1.4.0
anaconda-1.5.0
...省略
```

上記のようなリストが出力されたでしょうか？

執筆時点での最新版は２系では2.7.12、３系では3.5.2です。

##２系と３系

２系だとか、３系だとか言われても「？？？」だと思います。

これは、バージョンの呼び方です。

バージョンが２から始まるものを２系と呼び、３から始まるものを３系と呼びます。

このような区別があるのか。それは２系と３系でPythonは大きく生まれ変わったからです。

２系でしか動かないライブラリ（拡張機能・道具）があったり、逆もあったりとあります。（現時点では２系の方が多い）

（プレステ３とプレステ４みたいなものです。どっちも対応しているソフトもあれば、３でしか動かないものもありますよね。）

なので、なにか開発したいものが明確で、使うライブラリも決まっている方はそのライブラリがどちらに対応しているのか調べてからインストールするものを決めましょう。

これからPythonを始める方は、最新の３系でいいと思います。

##インストール

ではインストールしましょう。

```console
$ pyenv install インストールするバージョン
```

3.5.2をインストールする場合

```console
$ pyenv install 3.5.2
```

これで、Pythonインストールが完了しました。

あとは以下のコマンドで、このインストールを反映させれば、完了です。

```console
$ pyenv global 3.5.2 #ローカルの全てでバージョン3.5.2を使う。
$ pyenv rehash　#変更の反映
```

これでローカルの環境で指定したバージョンを反映させれたと思います。

実際に、pythonのバージョンを見てみましょう。

```console
$ python --version
Python 3.5.2
```

上記のように出力されていれば成功です。

#pyenv-virtualenvのインストール

以上のことでPythonのバージョンを簡単にインストールしたり、変更したり出来るようになりました。

ですが、今の状況では

同一のバージョンで違うPythonの環境が構築出来ません。

例えば、Pythonのバージョン 3.5.2 で一つのプロジェクトを開発をしていたとします。

そのプロジェクトを開発するにあたって、ライブラリ（拡張機能、道具）を導入し、Pythonの環境を構築しています。

そこで、新たに同一バージョン3.5.2でプロジェクトを開発しようとした際に、前プロジェクトで構築した環境とわけられません。

このような問題を解決するために、pyenv-virtualenvをインストールします。

##インストール

```console
$ brew install pyenv-virtualenv #pyenv-vertualenvをインストール
$ echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile
$ source ~/.bash_profile
```

お疲れ様でした。以上でpyenv-vertualenvのインストールも完了しました！
これからpythonで楽しいコード生活を送ってください！

#宣伝
[Naggi-Tech](http://naggi-blog.com/)というブログでこのような記述系の記事を書いてます！