virtualenv可以搭建虛擬且獨立的python環境,可以使每個專案環境與其他專案獨立開來,保持環境的乾淨,解決包衝突問題。
一、安裝virtualenv
virtualenv實際上是乙個python包,所以我們可以用easy_install或者pip安裝。下面介紹在centos系統上的安裝方法。
easy_install安裝方式:12
[root@localhost ~]# yum install python-setuptools python-devel
[root@localhost ~]# easy_install virtualenv
pip安裝方式:12
[root@localhost ~]# easy_install pip
[root@localhost ~]# pip install virtualenv
yum安裝方式(epel源):
1[root@localhost ~]# yum install python-virtualenv
二、建立python虛擬環境
使用virtualenv命令建立python虛擬環境:
virtualenv [虛擬環境名稱]。1
23[root@localhost ~]# virtualenv env1
new python executable in env1/bin/python
installing setuptools, pip...done.
執行後,在本地會生成乙個與虛擬環境同名的資料夾。
如果你的系統裡安裝有不同版本的python,可以使用
--python
引數指定虛擬環境的python版本:12
345[root@localhost ~]# virtualenv --python=/usr/local/python-2.7.8/bin/python2.7 env1
running virtualenv with interpreter /usr/local/python-2.7.8/bin/python2.7
new python executable in env1/bin/python2.7
also creating executable in env1/bin/python
installing setuptools, pip...done.
實測預設情況下虛擬環境
不會依賴系統環境的global site-packages。比如系統環境裡安裝了mysqldb模組,在虛擬環境裡import mysqldb會提示importerror。如果想依賴系統環境的第三方軟體包,可以使用引數
--system-site-packages12
3[root@localhost ~]# virtualenv --system-site-packages env1
new python executable in env1/bin/python
installing setuptools, pip...done.
三、啟動虛擬環境
進入虛擬環境目錄,啟動虛擬環境,如下:12
34[root@localhost ~]# cd env1/
[root@localhost env1]# source bin/activate
(env1)[root@localhost env1]# python -v
python 2.7.8
此時命令列前面會多出乙個括號,括號裡為虛擬環境的名稱。以後easy_install或者pip安裝的所有模組都會安裝到該虛擬環境目錄裡。
四、退出虛擬環境
退出虛擬環境:
deactivate12
(env1)[root@localhost env1]# deactivate
[root@localhost env1]#
1或者:
1建立乙個資料夾,用於存放所有的虛擬環境:
1[root@localhost ~]# mkdir ~/workspaces
設定環境變數,把下面兩行新增到~/.bashrc裡。12
[root@localhost ~]# export workon_home=~/workspaces
2.建立虛擬環境:
mkvirtualenv [虛擬環境名稱]12
3456
7[root@localhost ~]# mkvirtualenv env1
new python executable in env1/bin/python
installing setuptools, pip...done.
(env1)[root@localhost ~]# mkvirtualenv env2
new python executable in env2/bin/python
installing setuptools, pip...done.
(env2)[root@localhost ~]#
注意:mkvirtualenv可以使用virtualenv的引數,比如
--python
來指定python版本。建立虛擬環境後,會自動切換到此虛擬環境裡。虛擬環境目錄都在workon_home裡。
3.列出虛擬環境:
lsvirtualenv -b12
3(env2)[root@localhost ~]# lsvirtualenv -b
env1
env2
4.切換虛擬環境:
workon [虛擬環境名稱]12
3(env2)[root@localhost ~]# workon env1
(env1)[root@localhost ~]# echo $virtual_env
/root/workspaces/env1
5.檢視環境裡安裝了哪些包:
lssitepackages
6.進入當前環境的目錄:
cdvirtualenv [子目錄名]12
3456
(env1)[root@localhost ~]# cdvirtualenv
(env1)[root@localhost env1]# pwd
/root/workspaces/env1
(env1)[root@localhost env1]# cdvirtualenv bin
(env1)[root@localhost bin]# pwd
/root/workspaces/env1/bin
進入當前環境的site-packages目錄:
cdsitepackages [子目錄名]12
3456
(env1)[root@localhost env1]# cdsitepackages
(env1)[root@localhost site-packages]# pwd
/root/workspaces/env1/lib/python2.6/site-packages
(env1)[root@localhost site-packages]# cdsitepackages pip
(env1)[root@localhost pip]# pwd
/root/workspaces/env1/lib/python2.6/site-packages/pip
7.控制環境是否使用global site-packages:
toggleglobalsitepackages
8.複製虛擬環境:
cpvirtualenv [source] [dest]12
3[root@localhost ~]# cpvirtualenv env1 env3
copying env1 as env3...
(env3)[root@localhost ~]#
9.退出虛擬環境:
deactivate
10.刪除虛擬環境:
rmvirtualenv [虛擬環境名稱]12
[root@localhost ~]# rmvirtualenv env2
removing env2...
來自為知筆記(wiz)
搭建virtualenv開發Django
如果你和我一樣,在做django應用開發 利用virtualenv能快速的搞定這樣乙個開發環境,事實上不僅僅是django需要,你在做任何python開發的的時候,都可以考慮做這麼乙個 乾淨 的虛擬環境來進行開發,這樣就不必擔心搞亂自己的python主目錄時的庫程式了。具體面言,做這麼乙個開發環境,...
virtualenv搭建虛擬python環境
cmd pip install virtualenv pip為conda中的pip 所以它的安裝目錄為 e soft miniconda3 lib site packages 方法一 建立乙個放置虛擬環境的目錄,進入該目錄建立 virtualenv python37 可能會彈出警告 阻止該程式 選擇...
virtualenv搭建python虛擬環境
pip3 install i virtualenv 20.2.1 在.bashrc中配置 vim home bashrc export workon home home virtualenvs 重新整理配置 source home bashrc source 可選配置 command which p...