はじめまして、データサイエンティストのますみです!
様々な環境構築の方法がありますが、オススメの方法(pyenvおよびpyenv-virtualenvを用いた方法)を紹介します。
1. brewのインストール
まずは、brewと呼ばれる「macOS専用のパッケージマネージャー」をインストールします。以下のコマンドをterminalで実行してみましょう。
($
はコマンドを打てる状態を表す記号なため、入力は行わないでください。環境によっては%
が表示されると思います。)
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
2. pyenvのインストール
brewが無事にインストールされたら、pyenvを次にインストールします。pyenvとは、「pythonのバージョン管理ツール」です。以下のコマンドを実行しましょう。
$ brew install pyenv
もしもインストールが完了したら、以下のようにpyenvのバージョンを表示してみましょう。2行目のように何かしらのバージョンのレスポンスが返ってきたら、しっかりとインストールされていることが確認できます。
$ pyenv -v
pyenv 1.2.18 // Response
最後に、pyenvの設定が反映されるようにしていきましょう。
先頭の文字が$
の人は、以下のコマンドを入力しましょう。
$ pyenv init
# Load pyenv automatically by appending
# the following to ~/.bash_profile:
eval "$(pyenv init -)"
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
zshellの人(先頭の文字が$
ではなくて、%
の人)は、おそらく~/.bash_profile
ではなくて、~/.zshrc
へappend(追加)するように出力されると思います。そのため、zshellの方は以下のように入力してみましょう。
% pyenv init
# Load pyenv automatically by appending
# the following to ~/.zshrc:
eval "$(pyenv init -)"
% echo 'eval "$(pyenv init -)"' >> ~/.zshrc
3. python3のインストール
次に、pyenvを用いてpython3(今回はv3.6.5)をインストールしていきます。以下のコマンドを実行していきましょう。
$ pyenv install 3.6.5
インストールされたかを確認するために、以下のコマンドを実行します。このコマンドは、現在利用できるpythonのバージョンを表示するコマンドです。2,3行目のように表示されたら、v3.6.5がインストールされていることが確認できます。また、*
は現在globalで設定されているバージョン(デフォルトのバージョンのようなもの)を表しています。
$ pyenv versions
* system (set by /Users/masumi_morishige/.pyenv/version)
3.6.5
もしも日頃からv3.6.5を使用したい場合は、以下のように指定することができます。もう一度versions
で確認すると、*
の位置が変わっていることが確認できます。
$ pyenv global 3.6.5
$ pyenv versions
system
* 3.6.5 (set by /Users/masumi_morishige/.pyenv/version)
ここまで設定が完了すれば、python3の実行は可能です。
試しに、python3で”Hello World”と出力してみましょう。
まずは、以下のコマンドを実行しましょう。このコマンドは、print('Hello World')
というコードをsample.pyというファイルに書き込み、保存します。
$ echo "print('Hello World')" > sample.py
先ほどglobalでv3.6.5を選択しましたが、念のためpythonのバージョンがv3.6.5になっているかを確認しましょう。
$ python -V
Python 3.6.5
v3.6.5になっていることが確認できたら、以下のようにsample.pyを実行しましょう。
$ python sample.py
Hello World
しっかりとHello Worldと出力されたでしょうか?ベースとなる環境構築は完了しましたが、本格的にpythonに触れていく場合は、次の章以降も行うことを推奨します。
4. pyenv-virtualenvのインストール
pyenv-virtualenvとは、複数の仮想環境を構築するためのツールです。例えば、v3.6.5のバージョンで「データ解析用の環境」と、「機械学習用の環境」を構築したいとします。こういった時に以下のような利点があります。
- それぞれの環境にインストールするパッケージが少しずつ異なるため、環境を分けることで余計なパッケージが含まれない。
- パッケージ間の依存関係を整理しやすい。
- 配布する時にパッケージが整理されているため、ご利益がある。
pyenvだけでもpythonを扱うことはできるのですが、研究や仕事で本格的にpythonを用いる予定がある場合は、pyenv-virtualenvの利用を強く推奨します。
それでは、以下のコマンドからインストールを行っていきましょう。
$ brew install pyenv-virtualenv
次に、例として、MLという名前の仮想環境(今回はv3.6.5)を作成していきましょう。
$ pyenv virtualenv 3.6.5 ML
Requirement already satisfied: setuptools in /Users/masumi_morishige/.pyenv/versions/3.6.5/envs/ML/lib/python3.6/site-packages
Requirement already satisfied: pip in /Users/masumi_morishige/.pyenv/versions/3.6.5/envs/ML/lib/python3.6/site-packages
バージョンを確認してみましょう。しっかりとMLという仮想環境が構築できていることを確認できます。
$ pyenv versions
system (set by /Users/masumi_morishige/.pyenv/version)
* 3.6.5
3.6.5/envs/ML
ML
5. プロジェクトごとのpyenvの設定
最後に、「プロジェクトごとにpyenvを設定する方法」を紹介します。
先ほど、globalコマンドを用いて、デフォルトのバージョンを設定しましたが、プロジェクトごとに環境を変えたい場合は、localコマンドを用いて設定していきます。
現在の環境は、globalで指定したv3.6.5ですが、現在いるsample.pyのプロジェクトでは、MLの環境にしたいとします。そのため以下のようなコマンドを実行しましょう。すると、環境がMLにスイッチしたことが確認できます。
$ pyenv local ML
$ pyenv versions
system
3.6.5
3.6.5/envs/ML
* ML (set by /Users/masumi_morishige/Documents/Local_Sandbox/sample_python/.python-version)
これは、コマンドを実行したディレクトリのみに反映されていて、.python-versionという隠しファイルで管理されます。現在いるディレクトのファイルを表示してみましょう。隠しファイルなため、ls
では表示されません。そのため、-a
オプションを追加します。
$ ls -a
.python-version sample.py
すると、.python-versionが作成されていることがわかります。中身も確認してみましょう。
$ cat .python-version
ML
中身は、シンプルなテキストファイルのようですね。
これで、pyenv-virtualenvの解説も以上になります。
最後に
いかがだったでしょうか?
この記事を通して、少しでもあなたの困りごとが解決したら嬉しいです^^
📩 仕事の相談はこちら 📩
お仕事の相談のある方は、下記のフォームよりお気軽にご相談ください。
問い合わせフォームはこちら
もしもメールでの問い合わせの方がよろしければ、下記のメールアドレスへご連絡ください。
info*galirage.com(*を@に変えてご送付ください)
🎁 「生成AIの社内ガイドライン」PDFを『公式LINE』で配布中 🎁
「LINEで相談したい方」や「お問い合わせを検討中の方」は、公式LINEでご連絡いただけますと幸いです。
(期間限定で配信中なため、ご興味ある方は、今のうちに受け取りいただけたらと思います^^)
公式LINEはこちら
🚀 新サービス開始のお知らせ 🚀
新サービス 「AI Newsletter for Biz」 がスタートしました!
ビジネスパーソン向けに「AIニュース」を定期配信する完全無料のニュースレターです📩
ますみが代表を務める「株式会社Galirage」では、「生成AIを用いたシステムの受託開発(アドバイス活動含む)」をしています。
そこでお世話になっているお客様に対して、「最新トレンドを加味したベストな提案」をするために、日々最新ニュースを収集する仕組みを構築していました。
今回は、そこで構築した仕組みを活用して、より多くの人に有益な情報を届けたいと思い、本サービスを開始しました!
一人でも多くの方にとって、「AI人材としてのスキルアップ」につながれば幸いです^^
▼ 登録はこちらから ▼
https://bit.ly/ai_newsletter_for_biz_ai_lab