仮想環境作成ツール”virtualenv”の使い方【初心者向け】

Python,Tech

ブログ運営者
さいとう

閲覧いただきありがとうございます!"さいとう"と申します。わたしは異業種・未経験からIT業界に転職し、現在インフラエンジニアとしてクラウド環境の設計や構築・運用の支援を行っています。


Pythonには仮想環境を作成できる標準ライブラリ"venv"がありますが、サードパーティ製の"virtualenv"も利用できます。"virtualenv"は、"venv"よりも柔軟で、異なるPythonバージョンの選択や、環境のカスタマイズが容易に行える点が特徴です。


これにより、さまざまな開発環境に対応できるだけでなく、プロジェクトごとの特定の依存関係をより細かく管理することが可能となります。


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


具体的には、仮想環境の作成、管理、活用方法について、ステップバイステップで解説します。また、"virtualenv"を使うことで得られるメリットや、"venv"との違いについても触れます。これを通じて、Pythonプロジェクトの効率的な開発環境の構築方法を学び、自分の開発作業をよりスムーズに進める手助けとなれば幸いです。


Pythonの学習や開発を進める中で、仮想環境の理解と活用は欠かせないスキルです。この記事を参考にして、"virtualenv"を使いこなし、より快適な開発環境を整えてください。初心者の方でも分かりやすいように説明していますので、ぜひチャレンジしてみてください。

↓【PR】Python学習におすすめ



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

virtualenvとは

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

【メリット】

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



virtualenvの使ってみる

前提条件

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

  • OS: Windows
  • IDE: PyCharm



Pycharmの機能を利用

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

↓projectを開きます。


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


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


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


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


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


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




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


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

import sys

print(sys.version)




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


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


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


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

import sys

print(sys.version)




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


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


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


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


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


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


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


ターミナル

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


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


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

pip install virtualenv




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

virtualenv test_python_envvirtualenv <任意の名前>




↓作成が完了しても、自動的に仮想環境には切り替わりません。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






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

test_python_env\Scripts\Activate.ps1




↓[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'




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


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

deactivate






まとめ

Pythonは人気のあるプログラミング言語のひとつであり、その習熟によって幅広いキャリアパスが開けることでしょう。Pythonのスキルを身につけることで、Webアプリ開発、データサイエンス、機械学習、人工知能、自動化ツールの作成など、さまざまな分野で活躍することができます。


特にWebアプリ開発において、仮想環境を作成することは非常に有用です。仮想環境を使うことで、プロジェクトごとに異なるPythonのバージョンやライブラリの依存関係を管理でき、他のプロジェクトに影響を与えることなく作業を進めることができます。これにより、開発環境の混乱を避け、安定した開発が可能となります。


仮想環境を使うことで、依存関係の衝突を避けることができ、プロジェクトごとの一貫性を保つことができます。また、新しいライブラリを試す際にも、仮想環境内で行うことで、システム全体に影響を与えることなく安全に試すことができます。


今回の記事では、"virtualenv"の使い方を紹介しましたが、仮想環境の活用はPython開発におけるベストプラクティスのひとつです。実際に試してみて、その利便性を体感してみてください。開発効率の向上とトラブルの回避に大いに役立つことでしょう。


Pythonの学習を進める中で、仮想環境の作成と管理をマスターすることは、より高度な開発スキルを身につけるための大きな一歩となります。この記事が、仮想環境の理解と活用の一助となり、皆さんの開発プロジェクトがスムーズに進むことを願っています。ぜひ仮想環境を活用して、Python開発をさらに楽しんでください。

↓【PR】Python学習におすすめ



参考リンク:PyCharm