#104 Windows環境でvirtualenvする

結構前から気になっていましたが、ようやく私も virtualenv を入れてみることにしました。

virtualenv - Python Package Index

この virtualenv というツール、お手軽にPythonの仮想開発環境を作ることができるものです。 
私はpipからインストールしましたが、easy_installからでもインストールできるようです。
c:\home>pip install virtualenv

Windows環境でのvirtualenv

さて、ご存知の方もいらっしゃるかもしれませんが、私はWindowsユーザーです。
virtualenvに限らず、Pythonに関する情報はLinuxやMacユーザーからのものが多いです。
とは言え、Pythonは比較的クロスプラットフォームに力を入れているプログラミング言語でして、大抵のことはWindowsでもできます。

で、virtualenvはWindows環境でも問題なくインストールできます。

参考:
virtualenvをwindowsで動かしてみた - Unearned Income

私のPCにはPython 2.7とPython 3.2が同居しておりますが、Python 3.2でのpipで問題なくvirtualenvをインストールできました。

使ってみる

さて、virtualenvを使って、仮想開発環境とやらを作ってみようではありませんか!

以降、前提条件として、次のことが済んでいるとします。
  • virtualenvをインストール済み
  • virtualenvに環境変数PATHが通っている(インストールしたPythonフォルダのLib\site-packages)
さて、適当なフォルダに移動したら、さっそくvirtualenvします。
python -m virtualenv ${仮想環境を作りたいフォルダ} というコマンドです。
c:\source>python -m virtualenv oppy
これで、コマンドを実行したパスに仮想環境を作ったフォルダが出来上がります。
この中のScriptsフォルダに、activate.bat というバッチファイルがあるので、それを実行しましょう。
c:\source>oppy\Scripts\activate.bat
(oppy) c:\source>python
Python 3.2.2 (default, Sep  4 2011, 09:51:08) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
はい、ちゃんと動いていますね。

なお、仮想環境から離脱するには、Scriptsフォルダにあるdeactivate.batを実行します。
(oppy) c:\source>oppy\Scripts\deactivate.bat
c:\source>

もっとvirtualenvらしいこと

さて、あまり大したことをやっていないので、「virtualenvの何がすごいのか分からない」「普通にpython.exeを起動したのと変わらない」「( ゚∀゚)o彡゚ おっぱい!」など言われてしまうのではないかと思います。

そこで、ちょうど私のPCにPython 3.2と2.7が共存しているので、今度はPython 2.7の仮想開発環境を作ってみましょう。
c:\source>python -m virtualenv --python=c:\Python27\python.exe petapy
Running virtualenv with interpreter c:\Python27\python.exe
New python executable in petapy\Scripts\python.exe
Installing setuptools....................................done.
Installing pip...................done.

c:\source>
先ほどと同じように、仮想環境を作ったフォルダにあるactivate.batを叩いてみましょう。
c:\source>petapy\Scripts\activate.bat
(petapy) c:\Source\python>python
Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
はい、ちゃんとPython 2.7 が立ち上がりましたね。

virtualenvで仮想環境を作ると、一緒にsetuptoolsとpipがインストールされます。
これを使って、このPython 2.7仮想環境に外部パッケージをインストールしてみましょう。
(petapy) c:\source>pip install nose
そして、適当なテストコードとプロダクトコードを書いて、noseでテストを実行してみましょう。
(petapy) c:\source>cd petapy

(petapy) c:\source\petapy>nosetests testFibonacci.py
..
----------------------------------------------------------------------
Ran 2 tests in 0.001s
OK
ちゃんとnoseが動いてることが分かると思います。

virtualenvの使いどころ

virtualenvで仮想環境を作るのは、ベースのPythonの環境を汚したくない時ですね。
今回の例ではPython 2.7の仮想環境にnoseをインストールしましたが、これはPython 2.7本体の環境にはインストールされていません。
c:\source\petapy>nosetests testFibonacci.py
'nosetests' は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。
よって、仮想環境ごとに必要なパッケージをインストールすることで、他の仮想環境のsite-packagesを汚したりしません。
依存関係に頭を悩ませることが、だいぶ減ると思います。

まとめ

ということで、Windows環境でも問題なくvirtualenvを導入することができます。
思い思いの世界線仮想環境で、思う存分プログラミングに集中しましょう!

トラックバックURL

#104 Windows環境でvirtualenvする へのトラックバック

まだトラックバックはありません。

#104 Windows環境でvirtualenvする へのコメント一覧

まだコメントはありません。

コメントする

#104 Windows環境でvirtualenvする にコメントする
絵文字
プロフィール
あわせて読みたい
あわせて読みたい
記事検索
Project Euler
なかのひと
アクセス解析
Coderwall
  • ライブドアブログ

トップに戻る