在進行 Python 開發時,管理套件依賴(Dependencies)是每個開發者的必修課。雖然 conda create -n env_name 很方便,但有時候我們更希望將虛擬環境直接建立在專案目錄下。
這樣做的好處很多:你可以輕易地看到環境佔用的空間,且在切換不同電腦或與他人協作時,路徑更加直覺。
今天這篇文章就來教大家如何精準地在當下目錄建立指定版本的 Conda 環境。
為什麼要在「當下目錄」建立環境?
預設情況下,Conda 會將環境儲存在安裝目錄下的 envs 資料夾中。但如果你希望:
- 專案獨立性:環境資料夾就在專案裡(例如
./env或./venv)。 - 方便清理:刪除專案時順便刪除環境,不留殘餘。
- IDE 辨識:讓 VS Code 或 PyCharm 更容易自動偵測到專案專屬的 Interpreter。
那麼,你需要的參數就是 --prefix (或簡寫 -p)。
核心指令:一步到位
假設你想在目前的資料夾建立一個名為 env 的環境,並指定使用 Python 3.10,請執行:
Bash
conda create --prefix ./env python=3.10
指令解析:
conda create:建立環境的基礎指令。--prefix ./env(或-p ./env):這是關鍵!它告訴 Conda 不要去預設目錄找位置,直接在當前路徑下建立一個名為env的資料夾。python=3.10:指定你需要的 Python 版本。Conda 會自動尋找並下載對應的解釋器。
實作步驟:從建立到啟用
第一步:確認路徑
開啟終端機(Terminal / Prompt),切換到你的專案目錄:
Bash
cd /path/to/your/project
第二步:建立環境
執行上述指令。過程中 Conda 會詢問是否安裝基礎套件(如 pip, certifi 等),按下 y 即可。
第三步:啟用環境
注意!使用 --prefix 建立的環境,啟用方式與一般環境略有不同。你需要提供完整路徑或相對路徑:
Bash
# 使用路徑啟用
conda activate ./env
啟用成功後,你會發現終端機前方的括號顯示的是完整路徑,而不是環境名稱。
進階技巧:搭配 .gitignore
如果你使用 Git 進行版本控制,千萬記得不要把整個虛擬環境資料夾推上 GitHub。
請在你的 .gitignore 檔案中加入:
Plaintext
# 忽略 conda 虛擬環境資料夾
env/
venv/
常見問題 (FAQ)
1. 我可以指定更精確的版本嗎?
可以。例如 python=3.9.12 或是 python=3.11。Conda 會盡力幫你媒合最接近的版本。
2. 如何刪除這個環境?
因為環境就在資料夾裡,你可以直接刪除該資料夾,或是使用指令:
Bash
conda remove --prefix ./env --all
3. VS Code 抓不到這個環境怎麼辦?
在 VS Code 中按 Ctrl+Shift+P,搜尋 Python: Select Interpreter,然後點選 Enter interpreter path...,手動指向 ./env/bin/python (Mac/Linux) 或 ./env/python.exe (Windows) 即可。