virtualenvでpython環境を個別管理する
はじめに
みなさんはPythonでプログラミングを始めるとき、何から始めますか?
MacでもLinuxでも、デフォルトでシステムにPythonがインストールされているため、そのままプログラミングを始めることは可能です。
しかし、システムにデフォルトでインストールされているPythonを使ってライブラリをインストールしたり、Python自体をアップグレードすることはおすすめしません。
なぜなら、標準でインストールされているPythonはシステムそのものが使っており、Python自体のバージョンや、ライブラリのバージョンの変更は既存システムに影響がでる可能性があるからです。
そのため、Pythonでプログラミングを始める時は、Pythonの個別環境を作成することから始めることをおすすめします。
個別環境の作成・管理にはvirtualenvが便利です。
本記事ではvirtualenvのインストール方法、利用方法について紹介します。
なお、本記事では以下の環境で実行しています。
- Mac OSX Mojave(10.14.3)
前提
Macにvirtualenvをインストールするには以下のソフトウェアが必要です。
- Python 3
Homebrewのインストール (インストール済の方は不要)
brewコマンドをインストールしていない人は、先にインストールが必要です。
Macのバージョンは異なりますが、以下の記事が参考になります。
Python 3のインストール
brewコマンドを使ってインストールします。
$ brew install python3
以下のように、バージョンが表示されればインストールは成功しています。
$ python3 --version
Python 3.7.3
virtualenvのインストール
pip3
コマンドを使って、一発でインストールが可能です。
$ pip3 install virtualenv
こちらも、以下のようにバージョンが表示されれば、インストールは成功しています。
$ virtualenv --version
16.4.3
virtualenvを使った個別環境の作り方・使い方
以下のように、コマンドを実行すると、個別環境のファイルを作成することができます。
$ virtualenv test
すると、以下のようなフォルダ群が作成されます。
$ ls test/
bin include lib
アクティブ
個別環境のPythonを利用するには、sourceコマンドでactivateファイルを実行する必要があります。
$ source bin/activate
この状態ならpip installしても個別環境のPythonにインストールされるので、システムデフォルトのPythonは汚れません。
ディアクティブ
個別環境のPythonを利用をやめるには、deactiveコマンドを実行します。
$ deactive
以上、個別のPython環境の作成・利用の方法でした。
(おまけ)便利なコマンド(pip freeze)
個別環境のパッケージをバージョン付きで出力するコマンドを紹介します。
これを使用することで、テストした環境のバージョンをそのまま、Heroku等のDocker環境にデプロイできます。
開発環境と本番環境のバージョンを揃えるのにマストなコマンドです。
pip freeze > requirements.txt
おわり
Pythonは便利なモジュールがたくさんあるので、機械学習のみならず、色んな用途で便利にプログラムできるのでおすすめです。
プロジェクト毎に個別Python環境を整えて、クリーンにPythonを使い倒しましょう。