ubuntu系統下Python虛擬環境的安裝和使用


前言:進行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包會被安裝在主機非虛擬環境下,在虛擬環境中找不到這個包。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM