Flask開發環境:虛擬環境搭建與依賴管理

爲什麼需要虛擬環境?

在開發Python項目時,我們經常會遇到不同項目需要不同版本依賴庫的情況。比如,項目A需要Flask 2.0,而項目B需要Flask 1.0,如果直接安裝到系統全局Python環境中,升級或降級Flask可能會破壞其他項目。虛擬環境就是用來隔離不同項目的Python運行環境,讓每個項目都能擁有獨立的“小倉庫”,互不干擾。

一、選擇虛擬環境工具:venv(Python內置)

Python 3.3+版本自帶了虛擬環境工具venv,無需額外安裝,適合新手入門。

二、搭建虛擬環境(以venv爲例)

步驟1:創建項目目錄

先在你想存放項目的地方,新建一個文件夾,比如flask_demo
- Windows:打開命令提示符(CMD)或PowerShell,輸入:

  mkdir flask_demo
  cd flask_demo
  • Mac/Linux:打開終端,輸入:
  mkdir flask_demo
  cd flask_demo

步驟2:創建虛擬環境

在項目目錄中,執行以下命令創建虛擬環境(虛擬環境名稱設爲venv,可自定義):

python -m venv venv
  • 如果系統同時存在Python 2和Python 3,確保用python3 -m venv venv(Python 3專用)。
  • 執行後,項目目錄下會生成一個venv文件夾,裏面就是隔離的Python環境。

三、激活虛擬環境

虛擬環境創建後,需要先激活才能使用。不同系統激活方式不同:

Windows(CMD/PowerShell):

  • CMD
  venv\Scripts\activate.bat
  • PowerShell
  venv\Scripts\Activate.ps1

激活後,命令行開頭會顯示(venv),表示虛擬環境已生效。

Mac/Linux:

source venv/bin/activate

同樣,命令行開頭會顯示(venv)

四、安裝依賴:Flask

虛擬環境激活狀態下,安裝Flask(僅安裝到當前虛擬環境):

pip install flask
  • 如果提示pippip3版本過低,可先升級:pip install --upgrade pip

五、驗證Flask安裝

安裝完成後,驗證是否成功:

flask --version

如果輸出類似Flask 2.3.3, Python 3.9.7,則安裝成功。

六、依賴管理:導出與恢復

導出依賴(生成requirements.txt

項目開發完成後,需要將所有依賴導出到requirements.txt,方便後續部署或分享:

pip freeze > requirements.txt

此時,項目目錄下會生成requirements.txt文件,內容類似:

Flask==2.3.3
Werkzeug==2.3.7
Jinja2==3.1.2
...

恢復依賴(從requirements.txt安裝)

別人拿到項目後,只需在虛擬環境中執行:

pip install -r requirements.txt

即可一鍵安裝所有依賴,無需手動逐個安裝。

七、退出虛擬環境

如果需要退出虛擬環境,執行:

deactivate

命令行的(venv)標識會消失,回到系統全局Python環境。

八、常見問題與解決

  1. 不同系統激活命令不同
    - Windows CMD用venv\Scripts\activate.bat,PowerShell用venv\Scripts\Activate.ps1(需允許執行腳本:Set-ExecutionPolicy RemoteSigned -Scope CurrentUser)。
    - Mac/Linux用source venv/bin/activate

  2. 虛擬環境損壞怎麼辦?
    直接刪除項目目錄下的venv文件夾,重新執行python -m venv venv即可重建。

  3. 爲什麼要區分pippip3
    - pip通常對應Python 2,pip3對應Python 3。建議用python -m pip統一調用當前Python版本的pip(如python -m pip install flask)。

通過以上步驟,你已經掌握了Flask開發環境的核心技能:隔離環境、安裝依賴、管理版本。後續開發中,只需在激活虛擬環境後執行pip install,即可避免依賴衝突,讓項目更穩定、可復現。

小夜