python虛擬環境-virtualenv

1.virtualenv簡介

VirtualEnv用於在一臺機器上創建多個獨立的python運行環境,類似於一個個沙盒環境。

作用:
隔離項目之間的第三方庫依賴,如A項目依賴xxx1.1,B項目依賴xxx1.2。
爲部署應用提供方便,把開發環境的虛擬環境打包到生產環境即可,不需要在服務器上再折騰一翻。
嘗試新的第三方庫,而不用擔心污染系統環境。
在沒有權限的情況下安裝新組件。

virtualenv只能隔離第三方依賴庫,不能在多個python版本之間切換。pythonbrew可以滿足這個需求,將在下一篇介紹。

2.安裝

sudo easy_install virtualenv

3.創建並啓動新的運行環境

virtualenv env_name
source env_path/bin/activate

如下面的例子:
alexzhou@alexzhou:~/python_workspace$ virtualenv --no-site-packages test-flask
 
The --no-site-packages flag is deprecated; it is now the default behavior.
 
New python executable in test-flask/bin/python
 
Installing setuptools............done.
 
Installing pip...............done.

上面的命令會創建一個test-flask目錄,在test-flask/bin目錄下的python解釋器,它會優先使用test-flask/lib/pythonX.X/site-packages目錄下的庫。同時新建立的 virtualenv 會自動安裝好 easy_install 和 pip
ps:參數 –no-site-packages表示不查找系統的 site-packages目錄下的庫,而只查找test-flask/lib/pythonX.X/site-packages目錄下的庫,現在已經是默認的設置了。

啓用指定的沙盒,其實只是把當前沙盒下的bin目錄(/home/alexzhou/python_workspace/test-flask/bin)添加到環境變量PATH中,此時控制檯的前綴變成了 (test-flask)$,提示你已經進入該沙盒環境。

alexzhou@alexzhou:~/python_workspace/test-flask$ source ./bin/activate
(test-flask)alexzhou@alexzhou:~/python_workspace/test-flask$

退出沙盒環境
(test-flask)alexzhou@alexzhou:~/python_workspace/test-flask$ deactivate

在沙盒中安裝第三方依賴庫。ps:每次安裝第三方庫前,需進入沙盒環境。
(test-flask)alexzhou@alexzhou:~/python_workspace/test-flask$ pip install Flask


轉載請註明來自:Alex Zhou,本文鏈接:http://codingnow.cn/python/436.html


發佈了60 篇原創文章 · 獲贊 11 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章