最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python項目環(huán)境切換的幾種實現(xiàn)方式

 更新時間:2025年11月30日 11:06:08   作者:青山覆白雪  
本文主要介紹了python項目環(huán)境切換的幾種實現(xiàn)方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1. 如何在不同python項目中,安裝不同的依賴

通過PyCharm創(chuàng)建python項目之后,在目錄下會自動創(chuàng)建虛擬環(huán)境.venv,從而解決項目依賴沖突的問題。簡而言之.venv是一個獨立的、隔離的python工作空間。

它里面包含了三個主要部分:

  1. 獨立的 Python 解釋器副本

    • .venv/bin/(Linux/Mac)或 .venv/Scripts/(Windows)目錄下,會有一個 pythonpython.exe 文件。這是從你選擇的那個基礎(chǔ)Python(比如系統(tǒng)自帶的Python,或者你安裝的Anaconda中的Python)復(fù)制過來的一個副本。
    • 當(dāng)你激活這個虛擬環(huán)境后,你在終端里輸入的 pythonpip 命令,指向的都是這個副本,而不是你電腦的全局Python。
  2. 獨立的包安裝目錄

    • .venv/lib/python3.x/site-packages/ 目錄下,是專門用來存放你為這個項目安裝的第三方庫的地方。
    • 當(dāng)你在這個激活的虛擬環(huán)境中使用 pip install requests 時,requests 庫及其依賴就會被安裝到這個文件夾下,而完全不會影響到你電腦的全局Python環(huán)境或其他項目的虛擬環(huán)境。
  3. 環(huán)境配置腳本

    • 同樣在 binScripts 目錄下,有用于激活(Activate)停用(Deactivate) 這個虛擬環(huán)境的腳本。

2. 如何切換到不同項目的工作空間

Windows CMD

# 進(jìn)入項目目錄
cd 你的項目路徑

# 激活虛擬環(huán)境
.venv\Scripts\activate

# 安裝包(現(xiàn)在pip會使用虛擬環(huán)境中的)
pip install 包名稱

# 退出虛擬環(huán)境
deactivate

3.創(chuàng)建項目是不同的選項,有三種選項

3.1 項目venv(虛擬環(huán)境)

腳本創(chuàng)建,也可以通過PyCharm創(chuàng)建

# 創(chuàng)建
python -m venv myproject_venv

# 激活 (Windows)
myproject_venv\Scripts\activate

# 激活 (Linux/Mac)
source myproject_venv/bin/activate

特點:

  • 項目專屬,隔離在項目目錄內(nèi)
  • 輕量級,只包含Python基礎(chǔ)環(huán)境和pip
  • 依賴與系統(tǒng)Python完全隔離
  • 適合單一項目開發(fā)

3.2 基礎(chǔ)conda環(huán)境

# 查看基礎(chǔ)環(huán)境
conda info

# 在基礎(chǔ)環(huán)境中安裝包
conda install numpy

特點:

  • Conda安裝時創(chuàng)建的默認(rèn)環(huán)境
  • 全局共享,所有項目默認(rèn)使用
  • 容易造成包沖突和版本污染
  • 不推薦用于項目開發(fā)

3.3 自定義conda環(huán)境

# 創(chuàng)建自定義環(huán)境
conda create -n myenv python=3.9

# 激活環(huán)境
conda activate myenv

# 安裝包
conda install pandas matplotlib

特點:

  • 獨立的環(huán)境,可指定Python版本
  • 可以創(chuàng)建多個不同用途的環(huán)境
  • 支持非Python依賴(如C庫)
  • 適合復(fù)雜項目和多版本需求

主要區(qū)別對比

特性項目venv基礎(chǔ)conda自定義conda環(huán)境
隔離性完全隔離無隔離完全隔離
Python版本繼承系統(tǒng)Python固定可指定任意版本
包管理工具pipconda/pipconda/pip
跨平臺優(yōu)秀優(yōu)秀優(yōu)秀
依賴類型僅PythonPython+非PythonPython+非Python
資源占用輕量重量中等

最佳實踐

  1. 永遠(yuǎn)不要在基礎(chǔ)conda環(huán)境中安裝項目依賴
  2. 為每個項目創(chuàng)建獨立環(huán)境
  3. 使用環(huán)境文件共享配置:
# conda
conda env export > environment.yml
conda env create -f environment.yml

# venv
pip freeze > requirements.txt
pip install -r requirements.txt

選擇哪種方式取決于項目需求:簡單Python項目用venv,復(fù)雜數(shù)據(jù)科學(xué)項目或需要特定Python版本時用conda環(huán)境。

4.在自定義環(huán)境中,【從基礎(chǔ)解釋器繼承軟件包】和【可用于所有項目】兩個選項的區(qū)別

4.1 【從基礎(chǔ)解釋器繼承軟件包】

含義:

  • 新環(huán)境會繼承基礎(chǔ)環(huán)境(base)中已安裝的所有包
  • 相當(dāng)于創(chuàng)建一個"子環(huán)境",包含基礎(chǔ)環(huán)境的所有依賴

創(chuàng)建方式:

# 命令行方式(默認(rèn)行為)
conda create -n myenv --clone base
# 或者
conda create -n myenv

特點:

  • ? 優(yōu)點:快速開始,無需重新安裝常用包
  • ? 缺點:容易造成包沖突,環(huán)境不夠"干凈"
  • ?? 文件位置:通常在conda的envs目錄下

使用場景:

  • 需要基礎(chǔ)環(huán)境中的大量現(xiàn)有包
  • 臨時測試或快速原型開發(fā)

4.2【可用于所有項目】

含義:

  • 創(chuàng)建一個完全獨立、干凈的環(huán)境
  • 不繼承任何現(xiàn)有環(huán)境的包
  • 環(huán)境全局可用,任何項目都可以使用

創(chuàng)建方式:

# 創(chuàng)建干凈環(huán)境
conda create -n myenv python=3.9 --no-deps
# 或者指定少量必要包
conda create -n myenv python=3.9 pip

特點:

  • ? 優(yōu)點:環(huán)境干凈,避免包沖突
  • ? 優(yōu)點:可重復(fù)性好,依賴明確
  • ? 缺點:需要重新安裝所有依賴
  • ?? 文件位置:在conda的envs目錄下,全局可訪問

4.3 實際對比示例

# 場景1:繼承基礎(chǔ)環(huán)境的包(不推薦)
conda create -n inherited_env --clone base
conda activate inherited_env
conda list  # 會顯示大量基礎(chǔ)環(huán)境的包

# 場景2:創(chuàng)建干凈環(huán)境(推薦)
conda create -n clean_env python=3.9 pip
conda activate clean_env
conda list  # 只顯示python和pip等基本包

4.4 選擇建議

選擇【繼承軟件包】的情況:

# 當(dāng)你確實需要基礎(chǔ)環(huán)境中的包時
conda create -n data_analysis --clone base
conda activate data_analysis
# 現(xiàn)在你已經(jīng)有了pandas, numpy等數(shù)據(jù)科學(xué)包

選擇【可用于所有項目】的情況:

# 大多數(shù)項目開發(fā)場景
conda create -n myproject python=3.9
conda activate myproject
# 按需安裝依賴,保持環(huán)境干凈
conda install pandas numpy
pip install -r requirements.txt

最佳實踐

  1. 推薦使用【可用于所有項目】

    • 環(huán)境干凈,依賴明確
    • 避免隱式依賴帶來的問題
    • 便于依賴管理和復(fù)現(xiàn)
  2. 使用環(huán)境文件確保一致性

    # environment.yml
    name: myproject
    dependencies:
      - python=3.9
      - pip
      - pip:
        - -r requirements.txt
    
  3. 項目結(jié)構(gòu)建議

    myproject/
    ├── environment.yml    # Conda環(huán)境配置
    ├── requirements.txt   # Pip依賴
    └── src/
    

總結(jié):對于正式項目開發(fā),強烈建議選擇【可用于所有項目】創(chuàng)建干凈環(huán)境,這樣可以確保依賴管理的清晰和項目的可復(fù)現(xiàn)性。

到此這篇關(guān)于python項目環(huán)境切換的幾種實現(xiàn)方式的文章就介紹到這了,更多相關(guān)python 環(huán)境切換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

固始县| 昭觉县| 浮梁县| 宽甸| 宣武区| 仪陇县| 城口县| 郸城县| 鄄城县| 连州市| 淳化县| 青龙| 阿拉善右旗| 南汇区| 楚雄市| 从江县| 屏山县| 佛学| 共和县| 南宫市| 青铜峡市| 泸西县| 韶关市| 萍乡市| 凌源市| 满城县| 石楼县| 巍山| 镇远县| 抚宁县| 塘沽区| 阳高县| 东乡族自治县| 湘阴县| 昌黎县| 上林县| 连云港市| 青岛市| 汤阴县| 大名县| 漾濞|