Python虛擬環境:venv vs. virtualenv|Python

更新 發佈閱讀 2 分鐘

最近剛好在試著研究Python的虛擬環境,今天就來稍稍筆記一下。

在之前我其實也一直搞不懂這個,直到前陣子好好靜下心研究研究後有些心得。

在 Python 開發中,經常需要建立虛擬環境,來隔離不同專案所需的套件及依賴關係。這樣可以確保每個專案使用的套件版本都是一致的,避免可能的衝突和混淆。在 Python 中,有兩個主要的虛擬環境管理工具:venvvirtualenv

venv

優點:

  1. 內建工具:是 Python 3.3 版本以後內建的虛擬環境管理工具,因此不需要額外安裝,使得它在 Python 安裝中無縫集成。
  2. 輕量級:是一個較輕量的工具,因為它只包含基本功能,這使得它很容易學習和使用。
  3. 簡單易用:創建虛擬環境非常簡單,只需運行一個命令即可。例如:python -m venv myenv​
  4. Python 版本相容性venv 的虛擬環境將使用創建它的 Python 解釋器的版本,這有助於確保版本一致性。

缺點:

  1. 僅支持單一 Python 版本venv 創建的虛擬環境只能使用創建它的 Python 版本。如果需要在同一台機器上使用不同版本的 Python,就需要創建多個虛擬環境。
  2. 缺少進階功能:相較於 virtualenvvenv 提供的配置選項有限,對於需要更多自訂的場景可能不夠彈性。

virtualenv

優點:

  1. 跨版本支持:允許在虛擬環境中使用不同版本的 Python 解釋器,這對於需要跨版本的專案非常有用。
  2. 彈性配置:提供了更多配置選項,你可以自訂虛擬環境的設置,例如,可以指定要使用的 Python 版本或啟用額外的功能。
  3. 活躍的社區:是一個社區維護的項目,持續更新和改進,因此它在功能和支援方面非常穩定。
  4. 廣泛使用:由於 virtualenv 是一個第三方工具,它在 Python 社區中得到了廣泛的使用和支援。許多項目和教程也使用 virtualenv 作為虛擬環境管理工具的示例。

缺點:

  1. 需要額外安裝:與 venv 不同,virtualenv 需要額外安裝,這可能需要一些額外的步驟。
  2. 學習曲線較陡:相對於 venvvirtualenv 具有更多配置選項,這可能會對初學者造成一些困惑。

如果只是需要一個簡單的虛擬環境,使用Python 3.3或更新版本,那麼venv可能是個不錯的選擇。但如果你需要更多自定義和跨版本支援,那麼virtualenv可能更適合你的需求。不管選擇哪一個,其實只要符合自己的習慣那都OK,雖然我比較偏好於venv,因為安裝Python就有自帶,還不用再另外安裝,確實挺方便的。

留言
avatar-img
拾憶路上
12會員
26內容數
隨筆是我內心的聲音,隨影是我眼中的記憶。或許,在這個不斷流轉的人生中,它們是我最真實的見證和表達方式。
拾憶路上的其他內容
2024/11/28
選定好發行版後終於進入安裝的階段了!Linux安裝說簡單也很簡單,但也有複雜的安裝方式。從一開始學習Linux可以從虛擬機器(Virtual Machine)下手,讓你可以在不破壞現有系統的情況下體驗Linux。 接下來會安裝Ubuntu Server來作為學習Linux的第一步。
Thumbnail
2024/11/28
選定好發行版後終於進入安裝的階段了!Linux安裝說簡單也很簡單,但也有複雜的安裝方式。從一開始學習Linux可以從虛擬機器(Virtual Machine)下手,讓你可以在不破壞現有系統的情況下體驗Linux。 接下來會安裝Ubuntu Server來作為學習Linux的第一步。
Thumbnail
2024/11/14
當你打開瀏覽器,迫不及待開始搜尋「Linux」想要進入開源的世界,結果!數不清的發行版本不斷冒出來,瞬間讓你感到腦袋爆炸,馬上就想要把視窗關掉,心想還是乖乖的繼續用Windows好了......。 等等,這篇文章會帶你簡單了解一些主流 Linux 發行版,以及它們的特色,讓你在選擇時不會崩潰。
Thumbnail
2024/11/14
當你打開瀏覽器,迫不及待開始搜尋「Linux」想要進入開源的世界,結果!數不清的發行版本不斷冒出來,瞬間讓你感到腦袋爆炸,馬上就想要把視窗關掉,心想還是乖乖的繼續用Windows好了......。 等等,這篇文章會帶你簡單了解一些主流 Linux 發行版,以及它們的特色,讓你在選擇時不會崩潰。
Thumbnail
2024/11/07
這篇文章將探討Linux的特性、優勢與劣勢以及到底甚麼是Linux。還會與其他主流作業系統進行比較,希望讓大家了解這個極具魅力的作業系統(笑。
Thumbnail
2024/11/07
這篇文章將探討Linux的特性、優勢與劣勢以及到底甚麼是Linux。還會與其他主流作業系統進行比較,希望讓大家了解這個極具魅力的作業系統(笑。
Thumbnail
看更多
你可能也想看
Thumbnail
如果實在找不到可用的替代軟體,或者就是要用指定的軟體不可,那麼虛擬機器可以作為在使用Linux時的一個應對方案。
Thumbnail
如果實在找不到可用的替代軟體,或者就是要用指定的軟體不可,那麼虛擬機器可以作為在使用Linux時的一個應對方案。
Thumbnail
今天來介紹python的函式 函式在python中是非常重要的一環,因為到了後期,程式會越來越複雜。 而函式可以想成是容易管理的小程式,當我們需要使用時,只需呼叫即可。
Thumbnail
今天來介紹python的函式 函式在python中是非常重要的一環,因為到了後期,程式會越來越複雜。 而函式可以想成是容易管理的小程式,當我們需要使用時,只需呼叫即可。
Thumbnail
Python的模組和庫是可重用的程式碼塊,可透過import語句引入。特定部分可以透過from和import引入,並可使用as指定別名。第三方模組可透過pip工具安裝並在程式碼中使用。此外,也可以創建自定義模組並在其他Python文件中引用。
Thumbnail
Python的模組和庫是可重用的程式碼塊,可透過import語句引入。特定部分可以透過from和import引入,並可使用as指定別名。第三方模組可透過pip工具安裝並在程式碼中使用。此外,也可以創建自定義模組並在其他Python文件中引用。
Thumbnail
在Python中,import是一個關鍵字,用於將其他模組或套件中的程式碼引入到當前的程式中以供使用。 這個關鍵字允許你在你的程式中使用其他地方定義的變數、函式和類等。 當你使用import時,Python會搜索指定模組或套件的位置,並將其中的程式碼載入到你的程式中,這樣你就可以在程式中使用它們
Thumbnail
在Python中,import是一個關鍵字,用於將其他模組或套件中的程式碼引入到當前的程式中以供使用。 這個關鍵字允許你在你的程式中使用其他地方定義的變數、函式和類等。 當你使用import時,Python會搜索指定模組或套件的位置,並將其中的程式碼載入到你的程式中,這樣你就可以在程式中使用它們
Thumbnail
Python是一種易學且功能強大的程式語言,具有直譯、動態語法等特性,並擁有豐富的標準庫。它在各領域如Web開發、數據科學和人工智慧等得到廣泛應用,並被許多大公司如Google和Facebook等使用。Python還有強大的框架、豐富的交互機能、和龐大的社區。
Thumbnail
Python是一種易學且功能強大的程式語言,具有直譯、動態語法等特性,並擁有豐富的標準庫。它在各領域如Web開發、數據科學和人工智慧等得到廣泛應用,並被許多大公司如Google和Facebook等使用。Python還有強大的框架、豐富的交互機能、和龐大的社區。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
什麼是Python python是電腦程式語言的一種,如同python官方網站上的介紹 "Python是一種程式語,可讓你更快速地工作並更有效的整合系統"。簡單地說,就是你可用python這個程式語言去告訴電腦你想要作什麼,讓電腦來幫你完成你要作的事情。
Thumbnail
什麼是Python python是電腦程式語言的一種,如同python官方網站上的介紹 "Python是一種程式語,可讓你更快速地工作並更有效的整合系統"。簡單地說,就是你可用python這個程式語言去告訴電腦你想要作什麼,讓電腦來幫你完成你要作的事情。
Thumbnail
5 月將於臺北表演藝術中心映演的「2026 北藝嚴選」《海妲・蓋柏樂》,由臺灣劇團「晃晃跨幅町」製作,本文將以從舞台符號、聲音與表演調度切入,討論海妲・蓋柏樂在父權社會結構下的困境,並結合榮格心理學與馮.法蘭茲對「阿尼姆斯」與「永恆少年」原型的分析,理解女人何以走向精神性的操控、毀滅與死亡。
Thumbnail
5 月將於臺北表演藝術中心映演的「2026 北藝嚴選」《海妲・蓋柏樂》,由臺灣劇團「晃晃跨幅町」製作,本文將以從舞台符號、聲音與表演調度切入,討論海妲・蓋柏樂在父權社會結構下的困境,並結合榮格心理學與馮.法蘭茲對「阿尼姆斯」與「永恆少年」原型的分析,理解女人何以走向精神性的操控、毀滅與死亡。
Thumbnail
打開 jupyter notebook 寫一段 python 程式,可以完成五花八門的工作,這是玩程式最簡便的方式,其中可以獲得很多快樂,在現今這種資訊發達的時代,幾乎沒有門檻,只要願意,人人可享用。 下一步,希望程式可以隨時待命聽我吩咐,不想每次都要開電腦,啟動開發環境,只為完成一個重複性高
Thumbnail
打開 jupyter notebook 寫一段 python 程式,可以完成五花八門的工作,這是玩程式最簡便的方式,其中可以獲得很多快樂,在現今這種資訊發達的時代,幾乎沒有門檻,只要願意,人人可享用。 下一步,希望程式可以隨時待命聽我吩咐,不想每次都要開電腦,啟動開發環境,只為完成一個重複性高
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
當我們在撰寫一套系統的時候, 總是會提供一個介面讓使用者來觸發功能模組並回傳使用者所需的請求, 而傳統的安裝包模式總是太侷限, 需要個別主機獨立安裝, 相當繁瑣, 但隨著時代的演進與互聯網的崛起, 大部分的工作都可以藉由網頁端、裝置端來觸發, 而伺服端則是負責接收指令、運算與回傳結果, 雲端
Thumbnail
當我們在撰寫一套系統的時候, 總是會提供一個介面讓使用者來觸發功能模組並回傳使用者所需的請求, 而傳統的安裝包模式總是太侷限, 需要個別主機獨立安裝, 相當繁瑣, 但隨著時代的演進與互聯網的崛起, 大部分的工作都可以藉由網頁端、裝置端來觸發, 而伺服端則是負責接收指令、運算與回傳結果, 雲端
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News