はじめに
この記事はSFC Advent Calendar 2019の24日目の記事です.
慶應義塾大学SFC19のSantaです.
来年度からSFCの新入生は必修科目の情報基礎でPythonを学習するという話を聞いたので今回はMacでpyenvとpipenvでPythonの環境構築の方法を記します.あと研究会でPython使うことが多いので後々のためにも...
(WindowsユーザーなのにSFCのマジョリティであるMacユーザーのためにMacでの方法を書くとか優しすぎるな🤔)
※ここからはですます調じゃないです(面倒になった).
Homebrewをインストール
HomebrewはMac OS Xオペレーティングシステム上でソフトウェアの導入を単純化するパッケージ管理システムのひとつ.要は簡単にパッケージを管理することができるシステム.
まずは自分のMacにXcodeがインストールされているか確かめる.
Xcodeがインストールされてない場合はApp Storeからインストールして一回起動する.
そのあとターミナルを開いて下記のコマンドを実行.
$ xcode-select --install
Xcodeが入っているか確かめたあとに下記のコマンドを実行してHomebrewをインストールする.
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Homebrewがインストールされているか確かめる(Homebrew 2.2.0とか出てきたら大丈夫).
$ brew --version
pyenvとpipenvをインストール
- pyenv
$ brew install pyenv
- pipenv
$ brew install pipenv
- .bash_profileに環境変数の設定.
$ export PYENV_ROOT="$HOME/.pyenv"
$ export PATH="$PYENV_ROOT/bin:$PATH"
$ eval "$(pyenv init -)"
Pythonをインストール
pyenvを使うとPythonのバージョンを管理しやすくなる.
下記のコマンドでインストールできるPythonのバージョンを一覧で見ることができる.
$ pyenv install -l
今回はPython 3.7.4をインストールする.
$ pyenv install 3.7.4
インストールが終わってからターミナルでpythonと打ってもMacでデフォルトであるpython2が動いてしまうのでpyenvを使ってデフォルトのPythonのバージョンを3.7.4に変更する.
$ pyenv global 3.7.4
ここでpython --versionとターミナルで打つとpythonのバージョンが3.7.4に変わっているはず(変わらなかったら一回Macを再起動).
pipenvを使って開発環境を整える.
pipenvはPythonのパッケージ管理ツールでNode.js の npm や yarn,Ruby の gem のように,依存関係も扱える.
まずPythonで開発を行うフォルダを任意の場所に作る.
ここではデスクトップにPythonフォルダを作り,その中でtestフォルダを作ってそこで開発する.
$ cd desktop
$ mkdir Python
$ cd Python
$ mkdir test
$ cd test
testフォルダに移動したら開発フォルダ内で仮想環境フォルダを作成する設定をする.
$ export PIPENV_VENV_IN_PROJECT=1
ここまできてからpipenvで環境構築をする.
$ pipenv --python 3.7
pipenvで必要なパッケージをインストールする.
$ pipenv install numpy==1.14 # バージョン指定も可能
$ pipenv install keras
$ pipenv install tensorflow
$ pipenv install --dev autopep8 # --devで開発環境のみで使うパッケージを別枠(dev-packages)で管理しながらインストールすることができる
$ pipenv install --dev flake8
開発フォルダの中に任意のPythonファイル(ここではtest.py)を作って下記のように記述する.
import numpy as np
import keras
import tensorflow as tf
print(np.__version__)
print(keras.__version__)
print(tf.__version__)
pipenvでPythonのコード(ここではtest.py)を実行する方法.下記の様にエラーがでなければOK.
$ pipenv run python test.py
Using TensorFlow backend.
1.17.4
2.3.1
2.0.0
まとめ
MacのデフォルトのPythonが2系って絶対詰まる人が多いと思うんですよね...
来年度の新入生は頑張ってほしい.ちなみにおすすめのエディタはVSCodeです.
pipenvの使い方はPipenvを使ったPython開発まとめを参照して欲しい.
pyenvで他のPythonのバージョンをインストールしてそれを使ってpipenvで別の開発環境を作ることも可能なのでその辺はよしなに...
pipenvとかpyenvでもっと詳しく知りたいならググってくれ.そなたのハイスペックマシンで...
気が向いたらWindowsでの環境構築の方法も書きます.