仮想環境作成ツール”virtualenv”を使ってみる

Python学習のためにWebアプリ開発をしていて、仮想環境を複数作成することがベストプラクティスだと聞きました。

 

Pythonには仮想環境を作成できる標準ライブラリ"venv"がありますが、サードパーティの"virtualenv"もあります。

 

"virtualenv"は"venv"よりも柔軟にバージョンの選択や環境のカスタマイズが可能です。

 

今回の記事では、"virtualenv"の使い方を紹介します。

 

 

仮想環境を作成してみよう

■virtualenvとは

"virtualenv"は、Pythonを利用するプロジェクトごとに、独立した環境(仮想環境)を作成し、それぞれのプロジェクトで異なるパッケージやライブラリを管理できるツールです。

 

【メリット】

  • パッケージの隔離: 仮想環境を使用することで、プロジェクトごとに必要なパッケージやライブラリを独立して管理できます。これにより、プロジェクト間でのパッケージの衝突や競合を避けることができます。
  • 依存関係の管理: プロジェクトごとに必要なライブラリとそのバージョンを明示的に指定することができます。これにより、プロジェクトの動作が一貫して安定し、予期しない依存関係の変更による影響を受けにくくなります。
  • バージョンの管理: Pythonのバージョンをプロジェクトごとに異なるものを使用したい場合、仮想環境を使用することで、異なるPythonバージョンを切り替えて利用できます。
  • プロジェクトの独立性: 仮想環境を使用することで、特定のプロジェクトに依存せずにPythonの環境を管理できるため、プロジェクトを独立させることができます。

 

 

■virtualenvの使ってみる

●前提条件

仮想環境を作成する際に、IDEツール"PyCharm"を利用します。PyCharmのインストール方法はこちら

 

  • OS: Windows
  • IDE: PyCharm

 

 

●Pycharmの機能を利用

まずはPyCharmの機能を利用して、仮想環境を作成する方法を紹介します。

 

↓projectを開きます。

 

howtouse-virtualenv仮想環境作成

 

↓左上のメニューから[Files]→[Settings]をクリックします。

 

howtouse-virtualenv仮想環境作成

 

↓[Project]→[Project Interpreter]をクリックします。現在はanaconda3のPython3.11を利用していますね。

 

howtouse-virtualenv仮想環境作成

 

↓[Add Interpreter]をクリックします。

 

howtouse-virtualenv仮想環境作成

 

↓[Virtualenv Environment]をクリックし、任意の設定を行ってください。わたしは以前PCにインストールした"Python3.9"で仮想環境を作成してみます。

 

howtouse-virtualenv仮想環境作成

 

↓[OK]をクリックします。

 

howtouse-virtualenv仮想環境作成

 

↓新たに仮想環境を作ると、必要最低限のライブラリしか入っていません。問題なければ、[OK]をクリックします。

 

howtouse-virtualenv仮想環境作成

howtouse-virtualenv仮想環境作成

 

↓さきほど設定した内容で仮想環境が作成されます。作成されるまで待ちましょう。

 

howtouse-virtualenv仮想環境作成

 

↓完了しましたら、ためしにmain.pyに以下のコードを記述し、実行してみましょう。はじめはPython3.11でした。

import sys

print(sys.version)

 

howtouse-virtualenv仮想環境作成

 

↓右上にあるProject名をクリックし、[Edit Configyurations]をクリックします。

 

howtouse-virtualenv仮想環境作成

 

↓[Run]の項目で、自身が設定したPythonのバージョンにしましょう。

 

howtouse-virtualenv仮想環境作成

 

↓[OK]をクリックします。

 

howtouse-virtualenv仮想環境作成

 

↓もう一度実行を押しましょう。[shift + F10]でも実行できます。バージョンは変わりましたでしょうか?

import sys

print(sys.version)

 

howtouse-virtualenv仮想環境作成

 

 

仮想環境を作成しましたが、最低限のライブラリしか入っていません。なにかインストールしてみましょう。

 

[File]→[Settings]をクリックします。

 

howtouse-virtualenv仮想環境作成

 

↓[Project]の[Project Interpreter]をクリックし、画面中央にある[+]を押してください。

 

howtouse-virtualenv仮想環境作成

 

↓検索窓でインストールしたいパッケージをインストールしてみましょう。わたしは簡単にWebアプリを実装できる[Flask]をインストールしてみます。[Flask]を選択し、[Install Pavkage]をクリックしてください。

 

howtouse-virtualenv仮想環境作成

 

↓インストールに成功したメッセージが出ましたら、ウィンドウを消します。

 

howtouse-virtualenv仮想環境作成

 

↓ProjectにFlaskがインストールされたことを確認し、[OK]を押しましょう。※Packageがめちゃくちゃ増えていますが、FlasKをインストールすると、Flaskに必要な他のパッケージもインストールされます。

 

howtouse-virtualenv仮想環境作成

 

 

Pycharmの機能を利用して、仮想環境を作成するのは以上です。

 

 

●ターミナル

つぎはターミナルを利用して作成する方法を紹介します。

 

 

↓PyCharmの左下に[Terminal]ボタンがありますので、クリックします。

 

howtouse-virtualenv仮想環境ターミナルで作成

 

↓"virtualenv"をインストールします。人によってはインストール済みかもしれません。
pip install virtualenv

 

howtouse-virtualenv仮想環境ターミナルで作成

 

↓"virtualenv"がインストールできましたら、仮想環境を作成するコマンドを入力します。仮想環境の名前は任意で入力してください。
virtualenv test_python_env
virtualenv <任意の名前>

 

howtouse-virtualenv仮想環境ターミナルで作成

 

↓作成が完了しても、自動的に仮想環境には切り替わりません。Pythonと打ち、対話型シェルを起動します。その後、[import flask]と打ってみましょう。すでにインストール済みのパッケージのため、エラーはおきません。

(base) PS C:\Users\odeco\PycharmProjects\pythonProject> python
Python 3.11.4 | packaged by Anaconda, Inc. | (main, Jul  5 2023, 13:38:37) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import flask

 

howtouse-virtualenv仮想環境ターミナルで作成

howtouse-virtualenv仮想環境ターミナルで作成

 

↓それでは、作成した仮想環境(test_python_env)を起動します。つぎのコマンドを入力してください。コマンドラインの左側に、仮想環境名が表示されるはずです。
test_python_env\Scripts\Activate.ps1

 

howtouse-virtualenv仮想環境ターミナルで作成

 

↓[python]と打ち、対話型シェルを起動し、flaskをインポートしてみましょう。

(base) (test_python_env) PS C:\Users\odeco\PycharmProjects\pythonProject> python
Python 3.11.4 | packaged by Anaconda, Inc. | (main, Jul  5 2023, 13:38:37) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import flask
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'flask'

 

howtouse-virtualenv仮想環境ターミナルで作成

 

ターミナルで作成した仮想環境ではFlaskをインストールしていないので、エラーが出ていますね。

 

今回は以上です。仮想環境が起動していますので、以下のコマンドで停止しましょう。
deactivate

 

howtouse-virtualenv仮想環境ターミナルで作成

 

 

まとめ:仮想環境作成ツール"virtualenv"使ってみる

Pythonは人気プログラミング言語のひとつです。習熟することで、幅広いキャリアが望めるかと思います。

 

Webアプリ開発をする際に、仮想環境を作成することは有用です。バージョン管理もそうですが、依存関係の管理にめちゃくちゃ役に立ちます。ぜひ試してみてください。

 

 

参考リンク:PyCharm
 

 

↓ほかの協栄情報メンバーもPythonに関する記事を公開しています。ぜひ参考にしてみてください。

 

■Pythonの3つの共通パス操作(lujian)
https://cloud5.jp/python-path/

 

■天気予報情報をスクレイピング(Python)で、LINE NotifyによりLINE通知の構築(INAMURA)
https://cloud5.jp/web-scraping_line-notify/

 

■Pythonでlxmlを用いてhtmlから情報取得(zhangzy)
https://cloud5.jp/python-ixml/

 

 

Last modified: 2023-08-26

Author