[Python] Virtual Env. 001 – Intro and How to Use It

【前言】

許多的 Python 套件或許停滯在特定版本,但由於套件衝突與其他程式,在不同版本間開發一直是場噩夢。雖然能夠依賴容器化解決,但不如 venv 好操作與變化。那麼,就讓我一探究竟吧。

【重點整理】

  1. Python 的 venv 可使用於 Windows 與 Linux 系統上
  2. 為 CLI 體系,適合編寫成批次檔(bash / batch)
  3. 所下載的封包在指定資料夾內,方便清除與單專案管理
  4. 相比容器化服務更適合高變動性的開發工作

【預計內容】

  1. venv 介紹
  2. Windows 安裝與操作
  3. Linux (MacOS) 安裝與操作

【主要內容】

1. venv 介紹

venv (virtualvenv) 本質上為 Python 的套件,旨在建立虛擬環境(Virtual Environment),安裝後以 python 為 CLI 主軸,自帶 pip / pip{version} / pip3 等執行檔,不用擔心每次都找不到作業系統對應的指令。而之中,利用 CLI 編寫批次檔也是最常見的應用之一,能快速的讓其他使用者將專案初始化。

圖 1:虛擬環境與各專案示意圖(自製)

2. Windows 安裝與操作

Step. 1 — 建立 venv

選擇好專案位置後,確認電腦安裝該 Python 版本後,便能透過以下指令建立指定版本的虛擬環境。完成後應該會多出個 .venv 資料夾。

BAT (Batchfile)
# 建立 Python v3.10.11 的 venv
py -3.10 -m venv .venv

Step. 2 — 進入環境

要使用該環境,我們自然要先在 Terminal 啟用,不然還是會用系統環境進行操作。

BAT (Batchfile)
# Windows 進入 venv
./.venv/Script/activate

完成之後應該會發現 Terminal 多出 (.venv) 字樣,就代表你成功進入環境並可以自由使用囉。那上述的方法也適用於 Windows Powershell 之中,十分方便。

3. Linux 與 MacOS 安裝與操作

Step. 1 — 安裝必要套件

相對 Windows 不同的是,Linux 系統本身由套件組合而成,那假設各位已安裝好 Python 版本 [1],就能進行以下步驟先安裝必要的套件了。

Bash
# 安裝必要套件
sudo apt-get install python3-pip python3-venv

Step. 2 — 建立 venv

安裝上述套件後,我們才能夠正常的建立 venv。

Bash
# 建立 Python v3.10.11 的 venv
python3 -3.10 -m venv .venv

Step. 3 — 進入環境

一樣,要使用該環境,我們自然要先在 Terminal 啟用,不然還是會用系統環境進行操作。

Bash
# Linux 進入 venv
source ./.venv/bin/activate

完成之後應該會發現 Terminal 多出 (.venv) 字樣,就代表你成功進入環境並可以自由使用囉。

Step. 4 — 退出環境

退出環境也相當簡單,只有輸入 activate 的反義詞就可以囉

Bash
deactivate

【後話】

venv 是針對單個專案實用的小工具,也不用擔心未來套件大亂不知怎麼清空間。相對適合部屬的容器,更適合高變化性的開發工作,進行各式的調整。希望這篇能幫助到各位讀者。

【參考資料】

[1] Download Specific Python Venison in Linux
https://opensource.com/article/20/4/install-python-linux

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.