【Python入門】virtualenvで仮想環境を作ろう

この記事ではPythonのvirtualenvについて解説をしたいと思います。Pythonでは開発環境を仮想化できるvirtualenvというソフトウェアが用意されています。

Pythonのバージョンごとに分けた開発環境を作りたい
新しいバージョンのモジュールやパッケージを試してみたい

今回の記事ではこのように思っている方に向けて、

  • 【基礎】virtualenvとは
  • 【基礎】virtualenvのインストール方法
  • 【実践】virtualenvのコマンド

などの基本的な部分について解説をしていきます。Pythonのvirtualenvについて理解を深めていきましょう!

virtualenvとは

virtualenvは一つのシステムの中に分離されたPythonの仮想環境を作ることができるソフトウェアです。コマンドで仮想環境を作ったり、仮想環境に出入りすることができます。

Pythonの仮想環境とは

Pythonの仮想環境という聞き馴染みの無い言葉が出てきましたね。Pythonの仮想環境はインストールしたモジュールやパッケージ、またPythonのバージョンごとに分離された環境のことです。

Pythonで開発をしていると「このパッケージを使うためには、また別のパッケージが必要になる。」などの依存関係が発生してきます。また、Python2系で動いていたパッケージはPython3系では動かないなど、それぞれのバージョン違いによる問題も出てきます。

このような問題を解決するために、Pythonの仮想環境を作ってソフトウェアごとにバージョンの違うパッケージを用意することで、同じシステム内の環境を汚すこと無く開発することが出来ます。少しだけ動かしてみたいパッケージがある場合にも、Pythonの仮想環境はとても役立ちます。

Pythonの仮想環境の種類

Pythonの仮想環境を作るソフトウェアは数種類あり、Pythonをよく使ってる人でも何を使えばいいのかわからなくなっている人がいます。

しかし基本的にはこの記事で紹介するvirtualenvと、venvと呼ばれる仮想環境を使えば良いでしょう。virtualenvはPythonの公式で配布されているパッケージではない(サードパーティ製)ですが、Python3.3より前であればこちらがよく使われていました。

Python3.3以降であればvenvという仮想環境がよく使われていて、これはvirtualenvが標準パッケージとしてPythonに組み込まれたものです。

インターネット上には様々なソフトウェアを使ってPythonの開発環境を仮想化する記事が上がっていますが、特にこだわりが無ければこの2つのソフトウェアを使うと良いでしょう。

virtualenvのインストール方法

virtualenvはサードパーティ製のソフトウェアなので、インストールをしなければ使うことが出来ません。このコマンドを使ってインストールをしておきましょう。

pip install virtualenv

ここで使っているpipはPythonのパッケージをインストールするためのコマンドです。詳しくはこちらの記事をご覧ください。

【Python入門】pipとは?使い方をわかりやすく解説!
更新日 : 2020年3月3日

virtualenvのコマンド

それではvirtualenvで仮想環境を動かすために必要なコマンドについて解説をしていきます。

仮想環境の作成

それではまずはじめに仮想環境を作りましょう。こちらのコマンドをご覧ください。

virtualenv 環境の名前

このコマンドを実行させることで、仮想環境が作られます。このコマンドではマシンにインストールされているPythonのバージョンで仮想環境が作られますが、Pythonのバージョンを指定したい場合は、

virtualenv -p python3.7 環境の名前

このように「-p」オプションを付けてバージョンを指定することでそのバージョンで仮想環境が作られます。しかしこの仮想環境は作ったディレクトリに入るだけでは機能しません。

activateとdeactivateという作業が必要になります。

仮想環境の有効化

作った仮想環境で開発を始めるには仮想環境の有効化をする必要があります。まずは作った環境にcdコマンドを使って入りましょう。cdコマンドなどのディレクトリの移動については、こちらの記事をご覧ください。

2時間でマスター!Linux/Unixコマンドの使い方超入門
更新日 : 2019年9月11日

実際にディレクトリを移動したところで、こちらのコマンドを実行してみましょう。

source 環境の名前/bin/activate

実行結果

(環境の名前) $

sourceコマンドで仮想環境のbinディレクトリにあるactivateというコマンドを実行させています。この動作を行うことで実行結果のように、仮想環境に入ることが出来ました。

仮想環境の無効化

次は仮想環境から出てみましょう。仮想環境から出るためにはこのコマンドを実行します。

deactivate

このコマンドを実行させるだけで、先程のactivateをする前の表示に戻ります。ここでPythonのバージョンと、そのPythonがどこにあるのかを調べてみましょう。

Pythonのバージョン

python -V

実行結果

Python (バージョン)

実行コマンドのフルパスを表示(場所を調べる)

which python

実行結果

(Pythonのコマンドのフルパス)

このコマンドをactivateする前としたあとで表示が変わることを確認してみましょう。表示されたバージョンやフルパスが変わっていれば仮想化は出来ていることがわかりますね。

まとめ

この記事ではvirtualenvでPythonの仮想化をする方法について解説しました。仮想化をする理由や方法については分かっていただけたでしょうか?

仮想化と聞くと難しいイメージがありましたが簡単なコマンドさえ覚えてしまえば難しくはありませんね。もしvirtualenvのコマンドを忘れてしまったときはぜひまたこの記事をご覧ください。

「プログラミング、右も左もわからない…」という方にオススメ

当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。

その経験を通してプログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。

侍エンジニア塾は上記3つの成功ポイントを満たすようなサービス設計に磨きをかけております。

cta_under_bnr

「自分のスタイルや目的に合わせて学習を進めたいな」とお考えの方は、ぜひチェックしてみてください。

書いた人

侍テック編集部

侍エンジニア塾は「人生を変えるプログラミング学習」をコンセンプトに、過去多くのフリーランスエンジニアを輩出したプログラミングスクールです。侍テック編集部では技術系コンテンツを中心に有用な情報を発信していきます。
サービスページはこちら
ツイッターはこちら
フェイスブックはこちら

おすすめコンテンツ

まずはここから!初心者でも1から学べるプログラミング入門カリキュラム

転職成功で受講料0円!あなたもプログラミングを学んでエンジニアデビュー