Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Python

Pythonのvenvの使い方(基礎編)をご紹介

投稿日:2022年6月12日 更新日:

 

<目次>

(1) Pythonのvenvの使い方(基礎編)をご紹介
 (1-1) venvとは?
 (1-2) STEP1:仮想環境(venv)の作成
 (1-3) STEP2:仮想環境(venv)の有効化
 (1-4) STEP3:仮想環境(venv)をVisual Studio Codeで使用する
 (1-5) こんなエラーが出た時は・・

(1) Pythonのvenvの使い方(基礎編)をご紹介

本記事ではvenvの使用を検討している方に向けて、基本的な操作方法についてご紹介します。

(1-1) venvとは?

「venv」はPython3.3より同梱された軽量の仮想環境を作るための機能です。Python3.6までは「pyvenv」が「venv」のラッパーとして含まれていたが、非推奨となりPython3.8からは完全に除外されました。
 
「venv」を使うことで特定のプロジェクト、特定のディレクトリに対して、ライブラリ等のモジュールを導入して軽量の環境を構築する事が出来ます。コマンドを実行すると「.venv」というディレクトリが作成され、そこに導入するライブラリが格納されていきます。
 
「pyenv」がPythonを「バージョン軸」で管理しているのに対して、「venv」は「環境軸」での管理となります。言い換えると「pyenv」はシェルセッションやディレクトリ単位等で適用バージョンを制御できるのに対し、「venv」ではパッケージ等の資源を含めた「環境」を完全に分ける事が出来るという違いになります。
 
(図100)

(1-2) STEP1:仮想環境(venv)の作成

環境を作りたいフォルダに移動して下記コマンドを実行します。
(コマンド)
python -m venv .venv
(図111①)
(図111②)
(補足)「.venv」→「Scrpits」配下のファイルについて
・「Activate.ps1」→当該Powershellセッションにおいて、仮想環境を有効化する
・「python.exe」→仮想環境が有効化されている時に、コマンド実行するために使用
・「pip.exe」→仮想環境が有効化されている時に、パッケージインストールするために使用
 
(図111③)

(1-3) STEP2:仮想環境(venv)の有効化

(コマンド)
.\\.venv\\Scripts\\activate
(図121①)
・成功すると「(.venv)」と緑色の文字で表示されます
(図121②)

・確認のため、pipコマンドの実行ファイルの場所を確認します。
(図122①)

・先ほど作成された「.venv\\Scripts」配下にある事が確認できました。
(図122②)

(1-4) STEP3:仮想環境(venv)をVisual Studio Codeで使用する

実際の開発はVS Code等のツールを使うと思いますが、VS Codeにおいてvenvを使う方法についてもご紹介します。特に何もしていないと、Visual Studio Codeはどのバージョンのインタープリタを使用すべきか?が分からないので、明示的に指定する必要があります。以降がその設定になります。
 
・①「Ctrl」+「Shift」+「p」でコマンドパレットを開きます。
(図131①)
・②「settings.json」と入力し「Open Workspace Settings (JSON)」を選択します。
(図131②)

・③下記のコードを入力して保存します。
 
(コード)
{
    "python.terminal.activateEnvironment":true
}

(図131③)

・④Visual Studio Codeを閉じて再度開くと、venvのインタープリタが選択されています。
→右下に「Python 3.8.10 (‘.venv’:venv)」と表示されている事を確認
(図131④)
 

(1-5) こんなエラーが出た時は・・

●エラー

& : 用語 'C:/Users/XXXXX/AppData/Local/Programs/Python/Python39/python.exe' は、コマンドレット、関数、スクリプト ファイル、
または操作可能なプログラムの名前として認識されません。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正し
いことを確認してから、再試行してください。
発生場所 行:1 文字:3
+ & "C:/Users/XXXXXXXX/AppData/Local/Programs/Python/Python39/pyt ...
+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:/Users/Tatsuy...on39/python.exe:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

●原因

恐らくPython(やconda)の環境変数の設定誤り or Python(やconda)のVSCodeのパス設定誤りの可能性があります。

●対策

上記の設定を確認する or 取り急ぎはvenv内のインタープリタを明示的に指定すれば実行も可能です↓

(構文)

& [venvのパス]/.venv/Scripts/python.exe [venvのパス]\[モジュール名].py

(例1)絶対パス指定

& c:/dev/Python/00_LocalPythonApp/Sample_JsonParse/.venv/Scripts/python.exe C:\dev\Python\00_LocalPythonApp\Sample_JsonParse\__init__.py
(例2)相対パス指定(オススメ)

⇒「c:/dev/Python/00_LocalPythonApp/Sample_JsonParse」に居る状態で、以降の部分のみを指定
.\.venv\Scripts\python.exe .\ __init__.py

(図132)

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-Python

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

PythonでSQLAlchemyを使ってOracleDBに接続する方法

(0)目次&概説 (1) 記事の目的  (1-1) 目的  (1-2) 前提条件 (2) 事前準備  (2-1) 準備1(cx_oracleパッケージの導入)   (2-1-1) インストール資源の入 …

Python3.5&Anaconda4.2のインストール手順(CentOS6)とHelloWorldの方法

(0)目次&概説 (1) インストール資源の入手  (1-1) ディストリビューション  (1-2) GitHubのpyenvのリポジトリのコピーを取得する (2) インストールの実施  (2-1) …

PythonでHTTP Error 403: Forbiddenエラーが出た時の対処方法とエラーの意味について

(0)目次&概説 (1) エラー:HTTP Error 403: Forbidden  (1-1) 発生状況・エラーメッセージ  (1-2) 原因  (1-3) 対処方法   (1-3-1) 修正前の …

Pythonで画面作成をtkinterで行う方法(入門編)

<目次> (1) Pythonで画面作成をtkinterで行う方法(入門編)  (1-1) tkinterとは?  (1-2) STEP1:tkinterモジュールのインポート  (1-3) STEP …

Pythonでcsvのカラム名・テーブルのレコードを取得する方法

今回PythonのPandasライブラリを用いてcsvファイルを読み込み、カラム名やテーブルのレコードを取得する方法をご紹介します。 <目次> (1) Pythonでcsvのカラム名・テーブルのレコー …

  • English (United States)
  • 日本語
Top