Python 虛擬環境

2022-02-25 13:42:35 字數 3264 閱讀 1769

有的時候因為各種原因,在作業系統下,我們會安裝很多版本的python直譯器。同樣,我們也有可能因為各種原因,需要不同版本的模組,比如django1.8,django1.11。再加上pip工具管理器的版本混亂問題。這就使得很多人在python的環境管理上產生極大的混亂。

通常每個專案,甚至專案不同階段的版本,需要不同的python直譯器和依賴庫。為了清晰明了,安全可靠的管理這些環境,需要為每個專案或每個應用各自建立一套「獨立、隔離」的python執行環境。

virtualenv就是用來為每乙個專案建立一套「獨立隔離」的python執行環境的工具。

開啟cmd輸入以下命令(預設已新增python環境變數)。

python -m pip install --upgrade pip
不難發現,此命令是在 pip install 加了字首 python -m,另外 --upgrade 為命令修飾。

以windows作業系統為例,要安裝virtualenv,建議直接使用當前環境變數下指定的pip,也就是你作業系統預設的那個python版本所繫結的pip,這樣方便命令呼叫。通常如下:

pip install virtualenv

可以在命令列介面中驗證安裝:where virtualenv

使用 pip isntall 安裝。

pip install c:\myproject\myblog\virtualenv-20.10.0-py2.py3-none-any.whl
在命令列執行:virtualenv –p "真實python直譯器可執行程式" –-no-site-packages "虛擬python環境完整路徑",如:

virtualenv –p c:\python35\python.exe –-no-site-packages e:\cmdb_vir

-p: 指定你要虛擬的python版本,這裡選擇了本地的python3.5;

–-no-site-packages(新版virtualenv好像改為"--clear"了 ?):表示在建立虛擬環境時不將原版本中的第三方庫拷貝過來,這樣就能獲得乙個純淨的python環境;

e:\cmdb_vir:表明在該目錄下,建立乙個叫做"cmdb_vir"的虛擬環境。

強烈建議將新建的虛擬環境中的 python 新增到系統環境變數中!

命令列下,進入你要使用的虛擬環境的目錄下的script資料夾,執行 activate 命令。或者使用絕對路徑的方式呼叫該命令。

必須注意命令提示符的開頭(cmdb_vir),它表示你當前在cmdb_vir這個虛擬環境內。現在,你可以當做乙個正常的python環境使用。例如執行python命令,又或者使用pip安裝第三方庫pip install requests。這些都被限制和繫結在cmdb_vir這個虛擬環境內,不會對作業系統下本地的python版本和其它的虛擬環境產生任何的影響!

1.在虛擬環境中,安裝django庫:pip install django==1.11

2.在虛擬環境中,進入虛擬環境目錄,新建django工程:(1) cd e:\cmdb_vir  (2) django-admin startproject djweb

如果是拷貝的django專案,且包含了 requirements.txt 檔案,可以一鍵安裝所需模組。進入虛擬環境,然後:

pip install -r requirements.txt    #

注意是requirements.txt的完整路徑或相對路徑

留意:執行以上命令的前提是,已使用命令 "pip freeze > requirements.txt" 把專案環境的依賴庫資訊匯出到 requirements.txt 檔案裡了。

要退出虛擬環境,只要執行script目錄下的 deactivate 命令就可以了。

要刪除虛擬環境,直接刪除虛擬環境所在的目錄就可以了,注意不要將其它的環境給刪了。但是,刪除虛擬環境後,所有以前使用該環境的工程都將受到影響。這點很好理解,所以請確保環境不再有需要再刪除! 

建立虛擬環境: $ virtualenv -p /usr/bin/python3.5 –-no-site-packages /my_venv

啟動虛擬環境: $ source /my_venv/bin/activate 

退出虛擬環境: $ deactivate 

刪除虛擬環境: $ rm –rf my_venv

因為pycharm整合了 virtualenv 等虛擬環境工具,故可通過pycharm幫助建立python虛擬環境,只需要在設定中指定基本python直譯器進行建立。(不太明白?點這裡)

注意事項:直接將虛擬環境複製到另一台機器,直接執行是會有問題的。

那麼可以採用以下辦法。

思路:將機器1虛擬環境下的所有模組打包,複製到機器2上進行安裝。有兩種情況要考慮,機器2

機器1:

1.首先在cmd命令列下,啟用虛擬環境;

2.在專案目錄下新建乙個whl資料夾(用來儲存我們依賴包)然後在虛擬環境cmd命令下切換到whl目錄執行pip freeze>requirements.txt (有網匯出)

3.若機器2

機器2:

1.新建虛擬環境,並將專案目錄放入該虛擬環境中;

2.啟用虛擬環境;

3.虛擬環境cmd命令進入機器1複製過來的專案下whl目錄,並執行安裝命令。

1)機器2有網情況通過requirements.txt包資訊安裝:pip install -r requirements.txt (有網安裝)

2)機器2

以上步驟完成後,就可以在機器2正常使用虛擬環境了。

>>django部署 ]

python 虛擬環境

sudo apt get install pip pip install upgrade pip sudo apt get install python virtualenv mkdir home virtualenvs export workon home home virtualenvs sou...

python 虛擬環境

由於在 mac 上同時安裝 anaconda2 和 anaconda3 的時候崩潰了多次,現在需要在 python2的環境下進行一些操作,所以需要產生乙個虛擬環境。pip install virtualenv virtualenv path venv name cd path source venv...

python虛擬環境

1.在電腦上將python安裝完成,並記住安裝的路徑 2.配置系統環境變數 控制面板 系統 高階 環境變數 系統變數 的path路徑,編輯新增路徑的版本即為預設使用版本 5.使用 virtualenv 虛擬環境名稱 命令建立虛擬環境,會在當前所在目錄進行建立 6.進入虛擬環境 開啟命令列 進入虛擬環...