footmark

ひよっこエンジニアの足跡

Virtualenv超入門

Pythonフレームワーク、「Flask」を使ってみようと公式ページに飛ぶと、そこには「Virtualenv」の文字。

なんぞこれ。

今回はこのVirtualenvに関して勉強してみたいと思います。

超個人的見解

※個人的に調べたり使ったりした感想みたいなものなので間違っているかもしれません。ご了承ください。

Virtualenv=Pythonの仮想実行環境構築ツール

ではないでしょうか。
Virtualenvを使えばPythonの実行環境を複数用意できる、つまりPython 2.7.6とPython 3.4.0など、バージョン違いのPythonを揃えたり、バージョンは同じでも入っているパッケージが違う環境を作ったりできるわけです。

公式ページには、プロジェクトにおけるバージョン問題の解決に使ってね!風に書かれています。
それももちろんですが、僕の場合は勉強用にあれやこれやインストールしたいけど、環境は汚したくないというワガママを解決できそうです。
今までは勉強用に仮想マシンを立てていましたが、Virtualenvと組み合わせることでより一層安心してグチャグチャにできそうです!(?)

インストールと簡単な使い方

インストール

sudo pip install virtualenv


以下、扱う仮想環境の名前を「test」とします。


仮想環境の構築

virtualenv test --no-site-packages

上記のコマンドを実行すると、カレントディレクトリにtestというディレクトリができます。
仮想環境の削除はコイツをrmコマンドで消すだけ。


仮想環境の削除

rm -rf ./test


仮想環境の起動

source test/bin/activate

または

. test/bin/activate


仮想環境のシャットダウン

deactivate

動作検証

Flaskがインストールされた仮想環境「test」と何もインストールされていない仮想環境「test2」とを比較し動作検証をしてみます。


まず仮想環境「test」を起動

. test/bin/activate


次にFlaskをインストール

pip install Flask


インストールされているパッケージを確認

pip freeze


結果

ethtool==0.6
iniparse==0.3.1
iwlib==1.0
pycurl==7.19.0
pygpgme==0.1
urlgrabber==3.9.1
virtualenv==1.11.5
yolk==0.4.3
yum-metadata-parser==1.1.2


新しく仮想環境「test2」を作成

virtualenv test --no-site-packages


仮想環境「test2」を起動

. test2/bin/activate


インストールされているパッケージを確認

pip freeze


結果

(何も表示されない)


ちゃんと独立してますね。

まとめ

Virtualenvを使えば

  • Pythonの実行環境を複数用意できる
  • 作り放題、消し放題(構築・削除が簡単)

コイツァ便利だ。。。