簡體   English   中英

使用venv時是否需要激活虛擬環境

[英]Do I need to activate virtual environment when using venv

在 Mac 上使用 Python 3.7.0。 嘗試使用在 python 3.4 后添加的venv模塊。

我使用python3 venv -m path/to/my/dir設置我的虛擬環境 - 我的問題是我需要激活這個虛擬環境才能使用嗎?

文檔似乎暗示我不需要?

您不需要特別激活環境; 激活只是將虛擬環境的二進制目錄添加到您的路徑中,以便“python”調用虛擬環境的 Python 解釋器,您可以運行已安裝的腳本而無需使用它們的完整路徑。 但是,安裝在虛擬環境中的所有腳本都應該可以在不激活的情況下運行,並自動與虛擬環境的 Python 一起運行。

如果我不必激活,將 venv 預先添加到二進制目錄有什么好處? 無論 venv 是否正常工作,都不會發生這種情況嗎?

激活 virtualenv 為您提供方便 它從來都不是必需的。

即使對於配置為使用#!/usr/bin/env python運行的腳本(在您的路徑上查找python可執行文件),您也可以手動更新PATH環境變量:

$ PATH="/path/to/venv/bin" some_script

激活會使PATH更新保持不變,直到您再次停用,這很方便。

例如,我經常同時使用多個 virtualenv。 其中一些只是為了安裝一些命令行工具,我已經符號鏈接到我的~/bin/目錄,另一個是 Jupyter 筆記本的家,還有兩個用於快速驗證不同 Python 版本中的代碼片段,並訪問第三個-派對圖書館。 我不激活其中任何一個。

當您激活 virtualenv 時,所發生的一切都是您的終端PATH變量未更新以將 virtualenv 的bin目錄放在首位,因此當您在終端中輸入pythonpip或其他沒有任何路徑的腳本時,shell將找到一個不同的 Python 二進制文件來運行。 通過提供該命令的完整路徑,您始終可以使用 virtualenv bin/目錄中的任何命令。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM