- ライブラリを色々試していたら、ごちゃごちゃしてきた
- 違うバージョンのライブラリを使う必要があるけど、都度インストールするのは面倒。。。
- 仮想環境って聞くけど、なんか難しそう
こんな悩みを解決します!!
Pythonのメリットとして、豊富なライブラリを活用して開発できることがあげられます。
開発をする中で、違うバージョンのライブラリが必要になることや、試しで入れたライブラリでごちゃごちゃになることが多いです。
Pythonの仮想環境を使用すれば、プロジェクトごとにライブラリを効率的に管理することができます。
本記事では、venv
を使用したPythonの仮想環境の作成方法をわかりやすく解説します。
この記事を読めば、Python初心者でもすぐに仮想環境を使った開発を開始することができます。
\ 学習時間をムダにしたくないなら /
おすすめオンラインスクール
Pythonを効率的に学習するには、オンラインスクールを活用するのがおすすめです。
おすすめオンラインスクールはこちらの記事で紹介しています。
⇒ これで決まり!Pythonオンラインスクール おすすめ3社を厳選!
仮想環境とは、隔離されたPython実行環境のこと
Pythonの仮想環境とは、特定のプロジェクトに必要なPython環境を独立して構築できる仕組みです。
プロジェクトごとにライブラリや設定をインストール・管理することができ、異なるプロジェクト間での依存関係の衝突を防ぐことができます。
仮想環境を活用するメリットとデメリット
メリット
- プロジェクトごとに必要なライブラリを管理できる
- 開発環境を簡単に再現できる
- システムの安全性の確保
デメリット
- リソースの消費が多くなる
- 仮想環境が増えると、管理が複雑になる
メリット
プロジェクトごとに必要なライブラリを管理できる
プロジェクトごとに仮想環境を作成することで、異なるバージョンのライブラリを使用することができます。
プロジェクトごとに必要なライブラリを管理できるため、バージョン違いによるトラブルをなくすことができます。
不要なライブラリを削除できるため、シンプルで効率的なライブラリの管理が可能です。
開発環境を簡単に再現できる
仮想環境を使えば、開発環境を簡単に他のメンバーや本番環境にコピー・再現することができます。
これにより、環境依存のトラブルを減らし、新しいメンバーがプロジェクトに参加する際の環境構築の時間を短縮できます。
プロジェクトを他のPCに移植する場合も、必要なライブラリとバージョンを簡単に移行できます。
システムの安全性の確保
独立した仮想環境内でライブラリをインストールすることで、システム全体の安全性を保ちながら開発を進めることができます。
システム全体のPython環境に影響を与えずに、新しいライブラリを試したい時に便利です。
デメリットと対処法
リソースの消費が多くなる
仮想環境ごとにPythonインタープリタやライブラリをインストールするため、ディスク容量が増加します。
リソースが限られた環境では、仮想環境を作成しすぎないように注意しましょう。
仮想環境が増えると、管理が複雑になる
複数の仮想環境を運用する場合、それぞれの環境の設定やライブラリのバージョンを管理する必要があります。
管理が複雑になると、バージョンを勘違いしたことによるトラブルや互換性問題が発生する可能性があります。
venvを使った仮想環境
venvとは、仮想環境作成するための標準モジュールのこと
venv
は、Pythonの仮想環境を簡単に作成・管理するための標準モジュールです。
Python 3.3以降に標準搭載されています。
仮想環境を作成するツールは他にも virtualenv
や pyenv
、 conda
などがありますが、初心者は venv
を使用すれば間違いありません。
仮想環境の作成
基本
venv
で仮想環境を作成するときは、下記コマンドを使います。
python -m venv 仮想環境名
仮想環境の名前は任意で決めることができます。
公式ドキュメントでは、よく使われる名前として 「 .venv 」 が紹介されています。
python -m venv .venv
pythonのバージョンを指定して作成する方法
Pythonで開発をしていると、複数のバージョンのPythonを使い分ける場合があります。
Pythonのバージョンを指定して、仮想環境を作成するときは下記コマンドを使います。
py -3.* -m venv 仮想環境名
例えば、Pythonのバージョンを3.8で指定するときは次のようになります。
仮想環境の名前はPythonのバージョンがわかるようにすると管理しやすくなるのでオススメです。
py -3.8 -m venv .py38venv
python -m venv .venv
では最新のバージョンのPythonが使用されます。
VSCodeで作成する方法
コマンド入力を使用せずに、VSCodeから仮想環境を作成することもできます。
仮想環境は現在のワークスペースに作成されます。
「Ctrl」 + 「Shift」 + 「P」でコマンドパレットを開きます。
コマンドパレットに Python: Select Interpreter
と入力します。
「インタープリタの選択」で「仮想環境の作成」をクリックします。
「環境の種類を選択」で「Venv」を選択します。
Pythonのバージョンを選択します。例として「 Python 3.8.10 64-bit 」を選択します。
使用する「 requirements.txt 」を選択します。特に指定がなければ、選択せずに「 OK 」をクリックします。
※「 requirements.txt 」については、後述します。
仮想環境の作成が開始されます。
現在のワークスペースに「 .venv 」フォルダが作成されていることを確認してください。
仮想環境の有効化 : activate
作成した仮想環境を使用するためには、有効化する必要があります。
仮想環境を有効化するには、下記コマンドを使用します。
コマンドプロンプトの場合
仮想環境名\Scripts\activate.bat
PowerShellの場合
仮想環境名\Scripts\Activate.ps1
仮想環境の名前が「 .venv 」の場合はそれぞれ下記のようになります。
コマンドプロンプトの場合
.venv\Scripts\activate.bat
PowerShellの場合
.venv\Scripts\Activate.ps1
下記のように、ターミナルに「 .venv 」と表示されていれば、仮想環境の有効化されています。
PowerShellの場合、実行ポリシーによりスクリプトが実行できない場合があります。
下記コマンドを実行することで、スクリプトが実行できるようになります。
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
参考:公式ドキュメント
仮想環境の無効化 : deactivate
仮想環境から抜けるには、無効化する必要があります。
仮想環境を無効化するには、下記コマンドを使用します。
deactivate
「 .venv 」の表示がなくなっていれば、無効化できています。
仮想環境の削除
不要になった仮想環境を削除するときは、仮想環境のフォルダを削除します。
フォルダの削除方法に制限はないので、エクスプローラから削除しても大丈夫です。
仮想環境でのパッケージ管理
ライブラリのインストール
ライブラリのインストール方法は仮想環境でも変わりません。
下記コマンドを実行します。
pip install ライブラリ名
ライブラリについては、こちらの記事で紹介しています。
⇒Pythonライブラリを紹介!インポート方法もわかりやすく解説!!
仮想環境の再作成
requirements.txt の作成
仮想環境を再作成する場合や他のメンバーと共有する場合は、「 requirements.txt 」ファイルを使用します。
「 requirements.txt 」には仮想環境にインストールされているライブラリが記載されています。
「 requirements.txt 」を使用することで、仮想環境を簡単に再現することができます。
「requirements.txt」を作成するときは、下記コマンドを使用します。
pip freeze > requirements.txt
requirements.txt によるライブラリインストール
「 requirements.txt 」からライブラリをまとめてインストールするときは、下記コマンドを使用します。
pip install -r requirements.txt
仮想環境の初期化
仮想環境の中身を初期化したい場合は、 --clear
オプションを追加します。
--clear
オプションでは、仮想環境のフォルダがすでに存在する場合、仮想環境作成前にフォルダの中身を削除します。
具体的には、下記のように記入します。
python -m venv --clear 仮想環境名
Pythonのバージョンを指定する場合
py -3.* -m venv --clear 仮想環境名
Pythonの仮想環境の注意点
仮想環境の有効化、無効化を忘れないようにする
仮想環境を作成しても、有効化しなければその環境で作業することができません。
プロジェクトごとに仮想環境を作成している場合は、作業前に必ず有効化を行うようにしましょう。
また、仮想環境の無効化を忘れると、ライブラリのインストール先が違ってトラブルの元になります。
仮想環境の有効化、無効化を忘れないように気をつけてください。
仮想環境ごとに必要なライブラリをインストールする
仮想環境を作成した状態では、必要なライブラリがインストールされていません。
プロジェクトに必要なライブラリに漏れがないように管理してください。
不要な仮想環境は削除する
仮想環境ごとにライブラリをインストールするため、ディスク容量を多く消費してしまいます。
不要な仮想環境は削除することで、ディスク容量を節約することができます。
仮想環境を削除する際、「 requirements.txt 」を作成しておくと、仮想環境を再作成する際に便利です。
Q&A
仮想環境とは何ですか?
Pythonの仮想環境とは、特定のプロジェクトに必要なPython環境を独立して構築できる仕組みです。
プロジェクトごとにライブラリや設定をインストール・管理することができ、異なるプロジェクト間での依存関係の衝突を防ぐことができます。
仮想環境を使うメリットは何ですか?
仮想環境のメリットは次の通りです。
メリット
- プロジェクトごとに必要なライブラリを管理できる
- 開発環境を簡単に再現できる
- システムの安全性の確保
仮想環境の使い分けはどうすればいいのですか?
仮想環境の使い分けの例として、次のものがあります。
- プロジェクトごとに個別の仮想環境を作成
- 開発環境と本番環境を分離
- バージョン違いのライブラリを共存
まとめ
本記事では、venv
を使用したPythonの仮想環境の作成方法をわかりやすく解説しました。
仮想環境の使用はメリットが多いです。
記事本文で紹介した内容以外でも、PyInstallerを使用する際、不要なライブラリをなくしたほうがexeファイルのサイズを小さくできます。
Python初心者でも venv
を使用すれば、簡単にPythonの仮想環境を作成できるので、ぜひ使ってください。
PyInstallerについては、こちらの記事で解説しています。
Pythonのインストール、VScodeの導入、仮想環境の導入と進めることができたら、実際に業務効率化に向けた自動化ツールを作成してみましょう。
自動化ツールの作成手順については、こちらの記事で解説しています。
Pythonを効率的に学習するために
Pythonの学習方法は、書籍やyoutube、スクールなどがありますが、一番のおすすめはオンラインスクールでの学習です。
オンラインスクールを勧める理由は以下の通り。
- 学習カリキュラムが整っているので、体系的に学ぶことができる。
- 時間や場所を選ばずに、自分のペースで学習できる。
- 学習で詰まったときに、気軽に質問できる環境がある。
オンラインスクールについてはコチラの記事で紹介しています。
⇒ これで決まり!Pythonオンラインスクール おすすめ3社を厳選!
2024年10月1日から給付制度が拡充され、最大80%給付されるスクールもあります。
Python学習を効率的に進めるために、スクールの検討をしてみてください。
おすすめオンラインスクール
コスト重視:デイトラ
AIスキル重視:Aidemy PREMIUM
転職重視:キカガク
最後まで読んでいただきありがとうございます!
ご意見、ご感想があれば、コメントを頂けるとうれしいです!!