本文共分爲三部分:html
1. virtualenv建立python虛擬環境python
2. pip與virtualenv安裝、卸載和管理Python包git
3. UBUNTU下舒服的python開發環境github
virtualenvubuntu
>>轉自 這裏緩存
virtualenv用於建立獨立的Python環境,多個Python相互獨立,互不影響,它可以:
1. 在沒有權限的狀況下安裝新套件
2. 不一樣應用能夠使用不一樣的套件版本
3. 套件升級不影響其餘應用bash
sudo apt-get install python-virtualenv
virtualenv [虛擬環境名稱]
如,建立**ENV**的虛擬環境服務器
virtualenv ENV
默認狀況下,虛擬環境會依賴系統環境中的site packages,就是說系統中已經安裝好的第三方package也會安裝在虛擬環境中,若是不想依賴這些package,那麼能夠加上參數 --no-site-packages
創建虛擬環境app
virtualenv --no-site-packages [虛擬環境名稱]
cd ENV source ./bin/activate
注意此時命令行會多一個(ENV)
,ENV爲虛擬環境名稱,接下來全部模塊都只會安裝到該目錄中去。ide
deactivate
Virtualenv 附帶有pip安裝工具,所以須要安裝的套件能夠直接運行:
pip install [套件名稱]
若是沒有啓動虛擬環境,系統也安裝了pip工具,那麼套件將被安裝在系統環境中,爲了不發生此事,能夠在~/.bashrc
文件中加上:
export PIP_REQUIRE_VIRTUALENV=true
或者讓在執行pip的時候讓系統自動開啓虛擬環境:
export PIP_RESPECT_VIRTUALENV=true
Virtaulenvwrapper是virtualenv的擴展包,用於更方便管理虛擬環境,它能夠作:
1. 將全部虛擬環境整合在一個目錄下
2. 管理(新增,刪除,複製)虛擬環境
3. 切換虛擬環境
4. ...
sudo easy_install virtualenvwrapper
此 時還不能使用virtualenvwrapper,默認virtualenvwrapper安裝在/usr/local/bin下面,實際上你須要運行 virtualenvwrapper.sh文件才行,先別急,打開這個文件看看,裏面有安裝步驟,咱們照着操做把環境設置好。
建立目錄用來存放虛擬環境
mkdir $HOME/.virtualenvs
在~/.bashrc中添加行: export WORKON_HOME=$HOME/.virtualenvs
在~/.bashrc中添加行:source /usr/local/bin/virtualenvwrapper.sh
運行: source ~/.bashrc
此時virtualenvwrapper就能夠使用了。
列出虛擬環境列表
workon
也能夠使用
lsvirtualenv
新建虛擬環境
mkvirtualenv [虛擬環境名稱]
啓動/切換虛擬環境
workon [虛擬環境名稱]
刪除虛擬環境
rmvirtualenv [虛擬環境名稱]
離開虛擬環境
deactivate
=====================================================================================================================================================================================
pip與virtualenv
>>原載於 這裏
pip能夠很方便的安裝、卸載和管理Python的包。
virtualenv則能夠創建多個獨立的虛擬環境,各個環境中擁有本身的python解釋器和各自的package包,互不影響。
pip和virtualenv能夠很好的協同工做,同時使用這兩個工具很是方便。
通常先安裝pip,安裝好後,pip install virtualenv就能夠自動從網上下載並安裝virtualenv了。而後virtualenv env1就能夠建立一個名爲env1的虛擬環境了,進入這個虛擬環境後,再使用pip install安裝其它的package就只會安裝到這個虛擬環境裏,不會影響其它虛擬環境或系統環境。
當須要將虛擬環境env1遷移或複製到另外一個虛擬環境(可能不在同一臺機器上)env2時,首先仍然須要在目的機器上安裝pip和virtualenv,而後採用如下方法之一安裝其餘的package:
============================================================================================================================