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

Python內(nèi)置venv虛擬環(huán)境工具的使用完全指南

 更新時間:2025年12月30日 09:29:13   作者:40324073  
venv 是 Python 3.3 + 自帶的內(nèi)置虛擬環(huán)境工具,無需額外安裝,核心作用是為不同 Python 項目創(chuàng)建隔離的運行環(huán)境,下面詳細(xì)講解它的創(chuàng)建、查看、激活、退出等核心操作,有需要的可以了解下

venv 是 Python 3.3 + 自帶的內(nèi)置虛擬環(huán)境工具,無需額外安裝,核心作用是為不同 Python 項目創(chuàng)建隔離的運行環(huán)境,避免依賴包版本沖突。下面詳細(xì)講解它的創(chuàng)建、查看、激活、退出等核心操作,同時覆蓋不同系統(tǒng)的差異。

一、前提準(zhǔn)備

確保你的系統(tǒng)已安裝 Python 3.3+(可通過 python3 --version 或 python --version 驗證)。部分 Linux 系統(tǒng)(如 Ubuntu)默認(rèn)未安裝 venv 模塊,需先執(zhí)行以下命令安裝依賴:

# Ubuntu/Debian系列
sudo apt update && sudo apt install -y python3-venv

二、核心操作詳解

1. 創(chuàng)建虛擬環(huán)境

(1)基礎(chǔ)創(chuàng)建(默認(rèn)隔離模式)

命令格式:

# 基礎(chǔ)命令:在當(dāng)前目錄創(chuàng)建名為【環(huán)境名】的虛擬環(huán)境(默認(rèn)不繼承系統(tǒng)全局包)
python3 -m venv 環(huán)境名

示例

# 創(chuàng)建名為my_project_venv的虛擬環(huán)境(隔離模式)
python3 -m venv my_project_venv

說明:執(zhí)行命令后,當(dāng)前目錄會生成與 “環(huán)境名” 同名的文件夾,包含 Python 解釋器、pip 工具、依賴包存儲目錄等。默認(rèn)情況下,虛擬環(huán)境是完全隔離的,不會使用系統(tǒng)全局安裝的 Python 包,所有依賴需重新通過 pip 安裝。

若系統(tǒng)存在多個 Python 版本(如 Python3.8、Python3.10),可指定具體版本創(chuàng)建:

python3.8 -m venv my_project_venv_38  # 使用Python3.8創(chuàng)建虛擬環(huán)境
python3.10 -m venv my_project_venv_310  # 使用Python3.10創(chuàng)建虛擬環(huán)境

(2)帶 --system-site-packages 參數(shù)創(chuàng)建(繼承系統(tǒng)全局包)

參數(shù)含義:

--system-site-packages 是 venv 的核心可選參數(shù),作用是讓創(chuàng)建的虛擬環(huán)境繼承系統(tǒng)全局 Python 環(huán)境中已安裝的包(如系統(tǒng)全局安裝的 numpy、tensorflow 等),避免重復(fù)下載大型依賴包,節(jié)省磁盤空間和時間。

適用場景:

  • 系統(tǒng)已全局安裝某個大型庫(如深度學(xué)習(xí)框架、科學(xué)計算庫),多個項目需共用該庫,無需重復(fù)安裝;
  • 部分庫依賴系統(tǒng)底層環(huán)境(如硬件驅(qū)動相關(guān)包),全局安裝后需在虛擬環(huán)境中直接使用。

命令格式與示例:

# 帶系統(tǒng)包繼承的創(chuàng)建命令
python3 -m venv --system-site-packages 環(huán)境名

# 示例:創(chuàng)建繼承系統(tǒng)全局包的虛擬環(huán)境(命名建議帶標(biāo)識,方便區(qū)分)
python3 -m venv --system-site-packages my_project_venv_with_global

關(guān)鍵注意事項:

  • 繼承時機:僅在虛擬環(huán)境創(chuàng)建時同步系統(tǒng)全局包,后續(xù)在系統(tǒng)全局安裝的新包,不會自動同步到已創(chuàng)建的虛擬環(huán)境(需重新創(chuàng)建或手動在虛擬環(huán)境中安裝);
  • 版本優(yōu)先級:虛擬環(huán)境中通過 pip 安裝的包,優(yōu)先級高于繼承的系統(tǒng)全局包(即若虛擬環(huán)境和系統(tǒng)全局安裝了同一包的不同版本,會優(yōu)先使用虛擬環(huán)境中的版本);
  • 兼容性風(fēng)險:若系統(tǒng)全局包版本與項目需求沖突,可能導(dǎo)致項目報錯,此時建議使用基礎(chǔ)隔離模式創(chuàng)建虛擬環(huán)境,單獨安裝適配版本的依賴。

2. 查看虛擬環(huán)境

核心邏輯:venv 創(chuàng)建的虛擬環(huán)境本質(zhì)是普通文件夾,沒有專屬的查詢命令,需通過系統(tǒng)的文件查詢指令查看。

不同系統(tǒng)操作:

系統(tǒng)類型查看命令說明
Linux/macOSls 目錄路徑(默認(rèn)當(dāng)前目錄直接輸入 ls)列出指定目錄下的文件夾,虛擬環(huán)境文件夾即為已創(chuàng)建的環(huán)境(如 my_project_venv)
Windows(CMD)dir 目錄路徑(默認(rèn)當(dāng)前目錄直接輸入 dir)列出當(dāng)前目錄下的文件夾 / 文件,可見虛擬環(huán)境文件夾
Windows(PowerShell)Get-ChildItem(簡寫 gci)效果同 dir,更簡潔的 PowerShell 指令

示例(Linux/macOS):

# 查看當(dāng)前目錄下的虛擬環(huán)境
ls
# 輸出:my_project_venv  my_project_venv_with_global (兩個虛擬環(huán)境文件夾)

# 查看指定目錄下的虛擬環(huán)境(如~/projects/venvs/)
ls ~/projects/venvs/

3. 激活虛擬環(huán)境

激活后,終端會顯示虛擬環(huán)境名稱前綴(如 (my_project_venv)),此時通過 pip 安裝的依賴會僅存于該環(huán)境(繼承模式下,新增依賴仍安裝在虛擬環(huán)境內(nèi),不影響系統(tǒng)全局)。

不同系統(tǒng)激活命令:

系統(tǒng)類型激活命令
Linux/macOSsource 環(huán)境名 /bin/activate(示例:source my_project_venv_with_global/bin/activate)
Windows(CMD)環(huán)境名 \Scripts\activate.bat(示例:my_project_venv_with_global\Scripts\activate.bat)
Windows(PowerShell).\ 環(huán)境名 \Scripts\Activate.ps1(示例:.\my_project_venv_with_global\Scripts\Activate.ps1)

激活成功標(biāo)識:終端前綴會新增 (環(huán)境名),例如:

  • Linux/macOS:(my_project_venv_with_global) user@localhost:~$
  • Windows:(my_project_venv_with_global) C:\Users\XXX\>

驗證激活狀態(tài)(可選):

# 查看當(dāng)前Python路徑(指向虛擬環(huán)境內(nèi)的Python解釋器)
which python3  # Linux/macOS
where python   # Windows

# 查看當(dāng)前pip路徑(指向虛擬環(huán)境內(nèi)的pip)
which pip3     # Linux/macOS
where pip      # Windows

# 驗證繼承的系統(tǒng)包(繼承模式下執(zhí)行,可看到系統(tǒng)全局安裝的包)
pip list  # 列出虛擬環(huán)境中的所有包(含繼承的系統(tǒng)包和后續(xù)安裝的包)

4. 退出虛擬環(huán)境

命令(所有系統(tǒng)通用):在已激活虛擬環(huán)境的終端中,直接輸入以下命令,無需額外參數(shù):

deactivate

退出成功標(biāo)識:終端前綴的 (環(huán)境名) 消失,恢復(fù)到系統(tǒng)默認(rèn)終端樣式,此時操作會回到系統(tǒng)全局 Python 環(huán)境。

三、補充操作:刪除虛擬環(huán)境

venv 虛擬環(huán)境是普通文件夾,直接刪除對應(yīng)文件夾即可(刪除后不可恢復(fù),需謹(jǐn)慎操作):

系統(tǒng)類型刪除命令 / 操作
Linux/macOSrm -rf 環(huán)境名(示例:rm -rf my_project_venv_with_global)
Windows手動刪除環(huán)境文件夾,或在 CMD/PowerShell 中執(zhí)行 rd /s/q 環(huán)境名(示例:rd /s/q my_project_venv_with_global)

四、核心總結(jié)

操作命令格式關(guān)鍵說明
基礎(chǔ)隔離模式創(chuàng)建python3 -m venv 環(huán)境名完全隔離系統(tǒng)全局包,依賴需重新安裝,無版本沖突風(fēng)險
繼承系統(tǒng)包創(chuàng)建python3 -m venv --system-site-packages 環(huán)境名繼承系統(tǒng)全局包,節(jié)省空間,注意版本兼容性
激活虛擬環(huán)境按系統(tǒng)選擇對應(yīng)命令(如 Linux:source 環(huán)境名 /bin/activate)激活后終端帶環(huán)境名前綴,操作僅作用于當(dāng)前環(huán)境
退出虛擬環(huán)境deactivate所有系統(tǒng)通用,退出后回到全局 Python 環(huán)境
查看虛擬環(huán)境ls(Linux/macOS)/ dir(Windows)虛擬環(huán)境本質(zhì)是文件夾,通過系統(tǒng)命令查看
刪除虛擬環(huán)境rm -rf 環(huán)境名(Linux/macOS)/rd/s /q 環(huán)境名(Windows)直接刪除文件夾,需先退出虛擬環(huán)境,刪除后不可恢復(fù)

venv 輕量、無額外依賴,是簡單 Python 項目環(huán)境隔離的首選工具。基礎(chǔ)隔離模式適合大多數(shù)場景,--system-site-packages 參數(shù)則為大型依賴復(fù)用提供了便捷方案,可根據(jù)項目需求靈活選擇~

到此這篇關(guān)于Python內(nèi)置venv虛擬環(huán)境工具的使用完全指南的文章就介紹到這了,更多相關(guān)Python venv虛擬環(huán)境內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python 如何展開嵌套的序列

    Python 如何展開嵌套的序列

    這篇文章主要介紹了Python 如何展開嵌套的序列,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-08-08
  • Python列表對象實現(xiàn)原理詳解

    Python列表對象實現(xiàn)原理詳解

    這篇文章主要介紹了Python列表對象實現(xiàn)原理詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07
  • Python?實現(xiàn)圖像特效中的油畫效果

    Python?實現(xiàn)圖像特效中的油畫效果

    這篇文章主要是為大家簡單介紹一下圖像添加油畫特效的基本原理以及代碼實現(xiàn),文中的示例代碼很詳細(xì),對我們學(xué)習(xí)或者工作有一點的價值,感興趣的小伙伴可以了解一下
    2021-12-12
  • Python德勞內(nèi)三角剖分詳解

    Python德勞內(nèi)三角剖分詳解

    這篇文章主要為大家詳細(xì)介紹了Python中德勞內(nèi)三角剖分的相關(guān)知識,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-04-04
  • pytorch排查loss值出現(xiàn)nan的情況及解決

    pytorch排查loss值出現(xiàn)nan的情況及解決

    在實驗室訓(xùn)練中,損失值出現(xiàn)nan是因條件篩選導(dǎo)致空列表,觸發(fā)torch.log()錯誤,通過包裹訓(xùn)練代碼快速定位問題,最終解決方案是添加1e-7常量確保數(shù)值穩(wěn)定性,避免計算異常
    2025-09-09
  • python GUI庫圖形界面開發(fā)之PyQt5樹形結(jié)構(gòu)控件QTreeWidget詳細(xì)使用方法與實例

    python GUI庫圖形界面開發(fā)之PyQt5樹形結(jié)構(gòu)控件QTreeWidget詳細(xì)使用方法與實例

    這篇文章主要介紹了python GUI庫圖形界面開發(fā)PyQt5樹形結(jié)構(gòu)控件QTreeWidget詳細(xì)使用方法與實例,需要的朋友可以參考下
    2020-03-03
  • Python實現(xiàn)文件壓縮和解壓的示例代碼

    Python實現(xiàn)文件壓縮和解壓的示例代碼

    這篇文章主要介紹了Python實現(xiàn)文件壓縮和解壓的方法,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下
    2020-08-08
  • Python&Matlab實現(xiàn)螞蟻群算法求解最短路徑問題的示例

    Python&Matlab實現(xiàn)螞蟻群算法求解最短路徑問題的示例

    本文主要介紹了Python&Matlab實現(xiàn)螞蟻群算法求解最短路徑問題的示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • jenkins配置python腳本定時任務(wù)過程圖解

    jenkins配置python腳本定時任務(wù)過程圖解

    這篇文章主要介紹了jekins配置python腳本定時任務(wù)過程圖解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • 快速掌握python權(quán)限功能設(shè)計實戰(zhàn)指南

    快速掌握python權(quán)限功能設(shè)計實戰(zhàn)指南

    在處理權(quán)限控制時,裝飾器能幫助我們以一種統(tǒng)一且簡潔的方式管理不同用戶對系統(tǒng)資源的訪問權(quán)限,本文將通過幾個簡單的示例逐步展示如何利用Python裝飾器實現(xiàn)從基礎(chǔ)到復(fù)雜的權(quán)限控制功能
    2024-01-01

最新評論

苗栗县| 宁远县| 屏南县| 武穴市| 南京市| 永丰县| 河北省| 莲花县| 上蔡县| 凤山市| 额尔古纳市| 鸡泽县| 敦化市| 梓潼县| 和政县| 徐水县| 濉溪县| 资溪县| 大邑县| 册亨县| 南投县| 全州县| 鹿泉市| 九龙坡区| 特克斯县| 屯门区| 会泽县| 青海省| 永修县| 广昌县| 昭苏县| 开阳县| 平谷区| 子洲县| 三亚市| 滨州市| 五台县| 麦盖提县| 开江县| 文登市| 香港 |