python虛擬環(huán)境--virtualenv
virtualenv 是一個(gè)創(chuàng)建隔絕的Python環(huán)境的工具糖声。virtualenv創(chuàng)建一個(gè)包含所有必要的可執(zhí)行文件的文件夾乱灵,用來(lái)使用Python工程所需的包。
安裝
pip install virtualenv
基本使用
- 為一個(gè)工程創(chuàng)建一個(gè)虛擬環(huán)境:
$ cd my_project_dir
$ virtualenv venv #venv為虛擬環(huán)境目錄名塞颁,目錄名自定義**
`virtualenv
venv將會(huì)在當(dāng)前的目錄中創(chuàng)建一個(gè)文件夾,包含了Python可執(zhí)行文件,以及
pip庫(kù)的一份拷貝虹曙,這樣就能安裝其他包了。虛擬環(huán)境的名字(此例中是
venv` )可以是任意的番舆;若省略名字將會(huì)把文件均放在當(dāng)前目錄酝碳。
在任何你運(yùn)行命令的目錄中,這會(huì)創(chuàng)建Python的拷貝恨狈,并將之放在叫做 venv
的文件中疏哗。
你可以選擇使用一個(gè)Python解釋器:
$ virtualenv -p /usr/bin/python2.7 venv
# -p參數(shù)指定Python解釋器程序路徑**
這將會(huì)使用 /usr/bin/python2.7
中的Python解釋器。
- 要開始使用虛擬環(huán)境禾怠,其需要被激活:
$ source venv/bin/activate
`從現(xiàn)在起返奉,任何你使用pip安裝的包將會(huì)放在
venv` 文件夾中贝搁,與全局安裝的Python隔絕開。
像平常一樣安裝包芽偏,比如:
$ pip install requests
- 如果你在虛擬環(huán)境中暫時(shí)完成了工作雷逆,則可以停用它:
<pre> $ . venv/bin/deactivate </pre>
這將會(huì)回到系統(tǒng)默認(rèn)的Python解釋器,包括已安裝的庫(kù)也會(huì)回到默認(rèn)的污尉。
要?jiǎng)h除一個(gè)虛擬環(huán)境膀哲,只需刪除它的文件夾。(執(zhí)行 rm -rf venv
)被碗。
這里virtualenv 有些不便某宪,因?yàn)関irtual的啟動(dòng)、停止腳本都在特定文件夾锐朴,可能一段時(shí)間后兴喂,你可能會(huì)有很多個(gè)虛擬環(huán)境散落在系統(tǒng)各處,你可能忘記它們的名字或者位置包颁。
virtualenvwrapper
鑒于virtualenv不便于對(duì)虛擬環(huán)境集中管理瞻想,所以推薦直接使用virtualenvwrapper。 virtualenvwrapper提供了一系列命令使得和虛擬環(huán)境工作變得便利娩嚼。它把你所有的虛擬環(huán)境都放在一個(gè)地方蘑险。
安裝virtualenvwrapper(確保virtualenv已安裝)
pip install virtualenvwrapper
pip install virtualenvwrapper-win #Windows使用該命令
安裝完成后,在~/.bashrc寫入以下內(nèi)容
export WORKON_HOME=~/Envs
source /opt/rh/python27/root/usr/bin/virtualenvwrapper.sh
第一行:virtualenvwrapper存放虛擬環(huán)境目錄
第二行:virtrualenvwrapper會(huì)安裝到python的bin目錄下岳悟,所以該路徑是python安裝目錄下bin/virtualenvwrapper.sh
source ~/.bashrc #讀入配置文件佃迄,立即生效
virtualenvwrapper基本使用
1.創(chuàng)建虛擬環(huán)境 mkvirtualenv
mkvirtualenv venv
這樣會(huì)在WORKON_HOME變量指定的目錄下新建名為venv的虛擬環(huán)境。
若想指定python版本贵少,可通過(guò)"--python"指定python解釋器
mkvirtualenv --python=/usr/local/python/bin/python venv
2. 基本命令
查看當(dāng)前的虛擬環(huán)境目錄
[root@localhost ~]# workon
py2
py3
切換到虛擬環(huán)境
[root@localhost ~]# workon py3
(py3)
[root@localhost ~]#
退出虛擬環(huán)境
(py3) [root@localhost ~]# deactivate
[root@localhost~]#
刪除虛擬環(huán)境
rmvirtualenv venv