前言:進行python項目開發的時候,由於不同的項目需要使用不同的資源包和相關的配置,因此創建多個python虛擬環境,在虛擬環境下開發就顯得很有必要。
安裝虛擬環境
-
步驟:
-
打開Linux終端(快捷鍵Ctrl+Alt+T),輸入命令:
sudo apt install python-virtualenv
sudo easy_install virtualenvwrapper
說明:以上兩條命令逐條執行,完成后虛擬環境安裝完畢。
或者可以使用pip安裝,前提是安裝了pip,一般python自帶了pip:
sudo pip install virtualenv
sudo pip install virtualenvwrapper
- 說明:安裝的結果一模一樣,使用任意一種即可。
- virtualenv是虛擬環境,virtualenvwrapper對virtualenv的命令進行了封裝,使得其更加友好。
注意:安裝的順序不能顛倒,virtualenvwrapper必須依賴於virtualenv。
創建虛擬環境
- 在終端輸入如下命令:
mkvirtualenv 虛擬環境名稱
如:
mkvirtualenv mywork
//會創建一個名為mywork的虛擬環境
-
創建的虛擬環境都保存在/home/.virtualenvs目錄下,可以進入這個目錄查看;
-
創建成功后會自動進入該虛擬環境,命令行提示改變;
-
指定python版本創建虛擬環境
上面的命令執行時,系統會創建默認的python版本的開發環境,一般大家的電腦會同時安裝python2和python3版本,有時需要不同的版本創建虛擬環境。
mkvirtualenv -p python路徑 虛擬環境名稱
例:
mkvirtualenv -p /usr/bin/python3 mywork
- -p指的是path的簡寫
- Py安裝的路徑,默認安裝在/usr/bin/目錄下;如果一時間找不到,使用命令:
如果提示:ModuleNotFoundError: No module named 'distutils.sysconfig',是virtualenv的版本不夠新
pip uninstall virtualenv
pip install virtualenv==16.1 # 重新安裝
whereis python3
在終端命令行搜索,會出現想要的路徑。

細節:不需要進入到/home/.virtualenvs目錄,在任何目錄下都可以執行命令,創建的虛擬環境的位置都一樣。
注意:創建虛擬環境是需要在聯網下進行,否則創建失敗。
注意:使用mkvirtualenv創建虛擬環境,可能提示找不到命令,一般是腳本文件沒有加入系統路徑,解決如下:
- 方法一:
# 找到virtualenvwrapper的腳本文件
whereis virtualenvwrapper
# 進入該目錄
cd /usr/local/python3/bin
# 執行腳本文件激活virtualenvwrapper
source virtualenvwrapper.sh
# 可以正常使用命令了
- 方法二:
# 方法一每次重啟后都需要手動激活,不方便,將命令添加到環境變量
sudo vi ~/.bashrc
# 在末尾添加一行
source /usr/local/python3/bin/virtualenvwrapper.sh
# 保存后執行
source ~/.bashrc
# 現在可以正常使用命令了,且每次重啟主機自動加載命令
虛擬環境的查看和使用
- 刪除虛擬環境
rmvirtualenv [虛擬環境名稱]
例:
rmvirtualenv mywork
注意:如果目前的位置在虛擬環境中,需要先退出虛擬環境,然后才能執行刪除
注意:可以在任何目錄執行刪除操作,如果不知道名字,可以rmvirtualen + 兩次Tab鍵,提示所有的虛擬環境
- 退出虛擬環境
deactivate
- 進入虛擬環境
workon [虛擬環境名稱]
例:
workkon mywork
注意:按workon+兩次Tab鍵會提示所有虛擬環境。
- 查看虛擬環境中安裝的python包
pip list
pip freeze
兩個命令都可以查詢,只是展示的形式不一樣。
在虛擬環境下安裝python包
- 進入虛擬環境,在終端輸入:
#升級pip
python3 -m pip install --upgrade pip
pip install 包的名字
注意:一定不要使用sudo pip ... ,這里是在虛擬環境中安裝python包,如果使用了sudo權限,python包會被安裝在主機非虛擬環境下,在虛擬環境中找不到這個包。
