溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

virtualenv是什么怎么用

發(fā)布時間:2020-06-24 09:15:36 來源:億速云 閱讀:1518 作者:清晨 欄目:開發(fā)技術

這篇文章將為大家詳細講解有關virtualenv是什么怎么用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

virtualenv簡介

在開發(fā)Python應用程序的時候,我們的系統(tǒng)上通常只會安裝一個Python版本:例如 3.7。所有使用 pip 安裝的第三方包都會被安裝到Python的site-packages目錄下。如果我們同時開發(fā)多個應用程序,而這些應用程序需要使用的某一個第三方包的版本各不相同,該怎么辦?這種情況下,為每個應用程序“獨立”安裝一套Python運行環(huán)境顯然是不現(xiàn)實的。這個難題,使用 virtualenv 可以輕易解決。

virtualenv 是專門用來為應用程序維護多套相互“隔離”的Python運行環(huán)境的工具,借助 virtualenv 我們可以在一臺主機上創(chuàng)建多套相互隔離的Python運行環(huán)境。

安裝virtualenv

安裝準備

安裝 virtualenv 之前需要先確認是否安裝好 python 和 pip 。

# python -V
Python 2.7.
 
# pip -V
pip 19.0.3 from /usr/local/python3/lib/python3.7/site-packages/pip (python 3.7)

pip安裝virtualenv

pip install virtualenv
# 或者
pip3 install virtualenv
 
# 檢查是否安裝成功
virtualenv --version
virtualenv 20.0.17 from /usr/local/python3/lib/python3.7/site-packages/virtualenv/__init__.py

常見問題: -bash: virtualenv: command not found

解決辦法:

# 找到 virtualenv 的安裝路徑
find / -name virtualenv
# /usr/local/python3/bin/virtualenv
# 創(chuàng)建軟連接
ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv

virtualenv各種其他命令如下:

用法:

$ virtualenv [OPTIONS] DEST_DIR

選項:

–version
顯示當前版本號。

-h, –help
顯示幫助信息。

-v, –verbose
顯示詳細信息。

-q, –quiet
不顯示詳細信息。

-p PYTHON_EXE, –python=PYTHON_EXE
指定所用的python解析器的版本,比如 –python=python2.5 就使用2.5版本的解析器創(chuàng)建新的隔離環(huán)境。 默認使用的是當前系統(tǒng)安裝(/usr/bin/python)的python解析器

–clear
清空非root用戶的安裝,并重頭開始創(chuàng)建隔離環(huán)境。

–no-site-packages
令隔離環(huán)境不能訪問系統(tǒng)全局的site-packages目錄。

–system-site-packages
令隔離環(huán)境可以訪問系統(tǒng)全局的site-packages目錄。

–unzip-setuptools
安裝時解壓Setuptools或Distribute

–relocatable
重定位某個已存在的隔離環(huán)境。使用該選項將修正腳本并令所有.pth文件使用相當路徑。

–distribute
使用Distribute代替Setuptools,也可設置環(huán)境變量VIRTUALENV_DISTRIBUTE達到同樣效要。

–extra-search-dir=SEARCH_DIRS
用于查找setuptools/distribute/pip發(fā)布包的目錄。可以添加任意數(shù)量的–extra-search-dir路徑。

–never-download
禁止從網上下載任何數(shù)據(jù)。此時,如果在本地搜索發(fā)布包失敗,virtualenv就會報錯。

–prompt==PROMPT
定義隔離環(huán)境的命令行前綴。

使用virtualenv

# 創(chuàng)建一個文件夾用來存放各個環(huán)境的相關文件
mkdir envs
cd envs
 
# 創(chuàng)建一個名稱為 test_env 的不帶任何第三方包的獨立的Python運行環(huán)境
virtualenv test_env
# 或者
mkdir test_env
cd test_env
virtualenv .
 
# 進入環(huán)境
source test_env/bin/activate
(test_env) [root@hadoop34 envs]#
 
# 為環(huán)境安裝軟件包
(test_env) [root@hadoop34 envs]# pip install requests
 
# 退出環(huán)境
(test_env) [root@hadoop34 envs]# deactivate

virtualenv就是一個搭建虛擬化的python環(huán)境,便于不同的項目在同一臺機器上開發(fā)運行。

virtualenv更多的還是適用于本地開發(fā)不同的項目,但是在生產環(huán)境中還是使用docker給不同的項目創(chuàng)建不同的容器,各自分開運行為好,不宜放在一個單獨的物理機中運行。

關于virtualenv是什么怎么用就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI