iT邦幫忙

0

Python 虛擬環境 Anaconda 安裝處理套件指令

  • 分享至 

  • xImage
  •  

在 Python 開發中,虛擬環境(Virtual Environment)是一種工具,用於創建獨立的 Python 執行環境。它允許不同的專案使用不同版本的 Python 解釋器和依賴套件,而不會相互干擾。

虛擬環境的作用

  • 依賴隔離:避免不同專案的依賴發生衝突。例如,webCrawler網頁專案 使用 Django 2.2,而機器學習專案需要 Django 3.0,可以使用虛擬環境讓兩者共存。
  • 便於測試:在不同環境中測試應用程式,例如測試不同版本的依賴套件對應用程式的影響。
  • 跨環境兼容:本地開發環境與伺服器部署環境保持一致,減少部署問題。

虛擬環境的工作原理

虛擬環境是透過拷貝或模擬一個獨立的 Python 解釋器及其 site-packages(套件存放目錄)來運行的。當虛擬環境被激活時,該環境的 Python 解釋器會覆蓋系統全域的 Python,從而執行該虛擬環境內的程式和安裝的套件。

如何建立虛擬環境: Anaconda Navigator & pip3

Anaconda Navigator 建立虛擬環境的特點

  • 圖形介面操作:適合對命令行不熟悉的使用者。
  • 依賴管理:Conda 作為套件管理器,專為科學計算優化,能自動解決依賴衝突。
  • 更多預設套件:Anaconda 自帶的環境會包含數十種常用的數據科學相關工具,如 NumPy、Pandas、Jupyter Notebook 等。
  • 多語言支持:除了 Python,也支持 R 等其他語言的環境管理。

如何使用 Anaconda Navigator 建立虛擬環境

  1. 開啟 Anaconda Navigator
    在你的操作系統中搜尋並啟動 Anaconda Navigator。

  2. 建立新環境
    在左側菜單選擇 "Environments"。
    點擊右下角的 "Create" 按鈕。
    輸入虛擬環境的名稱,例如 myenv。
    選擇需要的 Python 版本(例如 Python 3.8 或 3.10)。
    點擊 "Create",Anaconda 會自動設置好新的虛擬環境。

  3. 安裝所需套件
    選擇剛剛建立的環境,點擊 "Not Installed" 篩選出尚未安裝的套件。
    搜尋需要的套件(如 numpy, pandas 等),點擊前方的方框選取,然後點擊 "Apply"。

  4. 啟用虛擬環境
    在 Anaconda Navigator 中,選擇環境後,可以直接開啟應用程式,如 python、 Jupyter Notebook、Spyder 等。
    如果使用命令行啟用:
    conda activate webCrawler

這時候,命令行提示符會變成 (webCrawler),表示你已經進入了 webCrawler 虛擬環境。

查看當前虛擬環境

conda info --envs
這會列出所有已經創建的虛擬環境,並顯示當前啟動的虛擬環境。如果虛擬環境正在啟動,會在當前環境名稱旁邊顯示 *。

❯ conda info --envs

# conda environments:
#
base                     /opt/anaconda3
webCrawler            *  /opt/anaconda3/envs/webCrawler
website                  /opt/anaconda3/envs/website

在上面的例子中,webCrawler 環境是當前啟動的環境,因為它旁邊有 *

檢查虛擬環境中的 Python 路徑

which python
例如,當你啟動名為 webCrawler 的虛擬環境後,which python 應該會返回類似下面的路徑:

/opt/anaconda3/envs/webCrawler/bin/python

如果環境已經啟動,這時候你應該看到指向虛擬環境中的 Python 路徑,而不是指向 Anaconda 的全域安裝。

安裝套件

conda install numpy

查看已安裝的套件

conda list

這會列出當前虛擬環境中安裝的所有套件。如果你看到的套件列表跟全域的套件不同,那麼表示你確實在虛擬環境中。

退出虛擬環境

conda deactivate

刪除虛擬環境

如果你不再需要 website 這個環境並且想要刪除它,可以按照以下步驟操作:
conda env remove --name website

確認刪除成功

conda info --envs

刪除虛擬環境 website 中的 pandas 包

如果你只想刪除虛擬環境 website 中的 pandas 包,而不是刪除整個環境,
可以使用以下命令來移除 pandas:
步驟:
1.激活 website 環境:首先,你需要激活 website 環境,這樣你才能對其中的包進行操作。
conda activate website

2.卸載 pandas 包:
在激活環境後,你可以使用 conda remove 命令來卸載 pandas 包。
conda remove pandas

這個命令會將 pandas 從當前激活的環境中移除。

確認是否成功移除

你可以使用以下命令來確認 pandas 是否已經被成功移除:
conda list

這會顯示目前環境中已安裝的所有包。檢查列表中是否還有 pandas,如果已經沒有,則表示成功卸載

補充:如果使用 pip 安裝過 pandas,可以使用 pip uninstall:pip uninstall pandas
如果你是在 website 環境中使用 pip 安裝了 pandas,則需要使用 pip 命令來卸載它

使用 venv(內建模組,Python 3.3+)

# 創建虛擬環境
python3 -m venv myenv

# 激活虛擬環境
# Linux / MacOS
source myenv/bin/activate

# Windows
myenv\Scripts\activate

# 停用虛擬環境
deactivate

虛擬環境中的操作

  • 在虛擬環境內安裝套件:
pip install package_name

套件將只安裝到該虛擬環境中,而不會影響全域環境。

  • 查看虛擬環境中的已安裝套件:
    pip list

  • 虛擬環境的檔案結構
    假設虛擬環境名稱為 myenv,結構可能如下:

myenv/
├── bin/         # 虛擬環境的執行檔,例如 python, pip(Linux / MacOS)
├── Scripts/     # 虛擬環境的執行檔(Windows)
├── lib/         # 虛擬環境的 Python 標準庫及依賴套件
├── include/     # C/C++ 標頭檔案
├── pyvenv.cfg   # 虛擬環境的設定檔

Anaconda 與 venv/virtualenv 的比較

pip 和 conda 的差異在於,pip 會直接裝最新的;conda 會選擇相容性最高的版本安裝,而且在安裝之前會把要變更的東西都列出來,你確認之後他才會執行。

特性 Anaconda 虛擬環境 venv/virtualenv
操作方式 圖形界面或 Conda 命令行管理 主要依賴命令行操作
預設套件 包含多種科學計算工具 僅包含基礎 Python 套件
套件管理 使用 Conda,專為數據科學設計 使用 pip,通用的 Python 套件管理
依賴解決 Conda 更智能,解決依賴衝突較容易 pip 有時會遇到版本或依賴衝突
支援的語言 Python、R、Julia 等 僅支持 Python
靈活性 內置功能豐富,但相對封閉 靈活通用,可與其他工具搭配使用
適用場景 數據科學、機器學習 通用 Python 開發

在 VS Code 中使用 Conda 虛擬環境

  1. 啟動 VS Code
    打開你的 .py 文件所在的目錄。

  2. 選擇 Conda 環境作為解釋器

    • 點擊 VS Code 窗口底部的 Python: Select Interpreter(或者按 Ctrl+Shift+P 打開命令面板,輸入 Python: Select Interpreter)。
    • 在彈出的選單中,找到你創建的虛擬環境名稱(例如 myenv)。
      • 如果看不到,請先啟動終端執行 conda activate myenv,然後重新打開選單。
      • 如果還是看不到,可以手動添加環境(見下方)。
  3. 手動添加環境(若需要)

    • 確認你的環境位於以下路徑(根據系統不同):
      • Windows: C:\Users<你的用戶名>\Anaconda3\envs\myenv\python.exe
      • macOS/Linux: /Users/<你的用戶名>/anaconda3/envs/myenv/bin/python
    • 選擇「Enter interpreter path」,然後選擇上述路徑。
  4. 檢查虛擬環境

    • 打開 VS Code 的終端(快捷鍵 Ctrl+ 或 Ctrl+Shift+),確認虛擬環境名稱已經出現在終端提示符中(例如 (myenv))。
    • 如果沒有,手動輸入 conda activate myenv 激活。
  5. 編寫並運行代碼
    現在,你在 VS Code 中撰寫和運行 .py 文件時,會使用 myenv 中的 Python 解釋器和相關套件。


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言