virtualenv在Ubuntu18.10(64位)中的用法(命令和图形化建立虚拟环境)
virtualenv吃系統(tǒng)版本,所以系統(tǒng)python3.6的對(duì)應(yīng)的最高版本為ubuntu18.10
且celery部分功能不支持python3.7
而anaconda3太占用空間.
所以不要使用太新的系統(tǒng)
?
apt-get install python2.7 python2.7-dev
先安裝必要的包
apt-get install virtualenv? virtualenvwrapper
這兩條命令結(jié)束后,下面的一律退出root權(quán)限,普通user賬戶下操作即可。
然后
?
下面是非root用戶操作,注意,這里不要急著去~/.pip下面增加pip.conf文件,會(huì)導(dǎo)致后面步驟報(bào)錯(cuò)的。
source /usr/share/virtualenvwrapper/virtualenvwrapper.sh(也可以不source,直接另外一個(gè)開一個(gè)終端即可)
?
注意,上面這個(gè)命令中,source這個(gè)文件在不同的Linux系統(tǒng)的位置是不同的,不能照搬,
以上路徑僅僅是針對(duì)Ubuntu18.10(64位)的
?
上面的命令如果失敗,那么下面的mkvirtualenv將會(huì)無法運(yùn)行,運(yùn)行下面命令用來創(chuàng)建3.6的虛擬環(huán)境,下面命令中的第二個(gè)python2.7是虛擬環(huán)境對(duì)應(yīng)的文件夾的名字,可以自己換,
?
第一個(gè)python2.7不可以換。(下面的命令必須是上面source成功或者另外開一個(gè)終端但是自動(dòng)生效的前提下)
mkvirtualenv -p /usr/bin/python2.7 python2.7
deactivate
mkvirtualenv -p /usr/bin/python3.6?python3.6
解釋器來自/usr/bin/python3.6
安裝結(jié)束后,終端會(huì)變成這樣子:
(python3.6) appleyuchi@ubuntu19:~/.virtualenvs$
前面的(python3.6) 代表已經(jīng)進(jìn)入了虛擬環(huán)境
輸入pip -V得到:
pip 9.0.1 from /home/appleyuchi/.virtualenvs/python3.6/lib/python3.6/site-packages (python 3.6)
然后就可以非root下安裝tensorflow了
同樣地,先輸入命令deactivate,用來離開(python3.6) 這個(gè)虛擬環(huán)境,
然后用以下命令安裝2.7的虛擬環(huán)境
mkvirtualenv -p /usr/bin/python2.7 python2.7,同樣地,安裝結(jié)束后,會(huì)變成:
(python2.7) appleyuchi@ubuntu19:~/.virtualenvs$
同樣地,輸入deactivate可以離開虛擬環(huán)境
那么這個(gè)時(shí)候兩個(gè)虛擬環(huán)境都安裝好了,那么,平時(shí)剛啟動(dòng)系統(tǒng)進(jìn)入linux,如何在終端中使用虛擬環(huán)境呢?
如果要使用2.7版本的python,那么
cd /home/appleyuchi/.virtualenvs/python2.7/bin
source activate
然后使用pip也好,python也好都是2.7版本的
如果想退出虛擬環(huán)境,那么輸入deactivate就可以了
好了,現(xiàn)在如果想使用3.6版本的python,那么
cd /home/appleyuchi/.virtualenvs/python3.7/bin
source activate
即可,
然后在終端輸入python或者pip -V
會(huì)發(fā)現(xiàn)都是3.6版本的
退出虛擬環(huán)境后,輸入python會(huì)變成系統(tǒng)默認(rèn)python,輸入pip會(huì)報(bào)錯(cuò),command not found,這個(gè)是正常的,因?yàn)闆]有進(jìn)入虛擬環(huán)境。
?
?
總結(jié):
進(jìn)入python虛擬環(huán)境需要使用source activate文件
需要使用哪種python的虛擬環(huán)境就source該虛擬環(huán)境的activate文件,
退出虛擬環(huán)境需要使用 deactivate命令
每次在終端下安裝各種package(可以說他是庫,也可以說他是包),先進(jìn)入虛擬環(huán)境,然后再安裝,這樣就不需要root權(quán)限了。
當(dāng)然,也可以在pycharm中直接安裝各種package
?
?
效果圖:
?
?
?
?
注意事項(xiàng):
使用douban的pip源,盡量不要使用aliyun的源,有一定幾率報(bào)錯(cuò).
盡量確保pip處于最新版本,不然會(huì)出現(xiàn)莫名其妙的問題。
另外,可以使用圖形化操作,圖形化建立虛擬環(huán)境,沒必要像上面那樣敲命令,如下圖:
?
一些意外情況的處理,例如:
python virtualenv部署到目標(biāo)機(jī)器,在virtualenv虛擬環(huán)境下使用python,pip命令依然指向系統(tǒng)命令
也就是說,進(jìn)入了虛擬環(huán)境,用的pip卻不是虛擬環(huán)境的,仍然是系統(tǒng)的pip
這個(gè)在中問的stackflow上似乎沒有好的解決方案
我的解決辦法是:
(python3.6) appleyuchi@ubuntu:~/.virtualenv$ rm -r python3.6
(python3.6) appleyuchi@ubuntu:~/.virtualenv$ mkvirtualenv -p /usr/bin/python3.6?python3.6
?
效果如下:
(python2.7) appleyuchi@ubuntu:~/.virtualenvs$ pip -V
pip 9.0.1 from /home/appleyuchi/.virtualenvs/python2.7/local/lib/python2.7/site-packages (python 2.7)
(python2.7) appleyuchi@ubuntu:~/.virtualenvs$ deactivate
appleyuchi@ubuntu:~/.virtualenvs$ cd python3.6
appleyuchi@ubuntu:~/.virtualenvs/python3.6$ cd bin
appleyuchi@ubuntu:~/.virtualenvs/python3.6/bin$ source activatge
-bash: activatge: No such file or directory
appleyuchi@ubuntu:~/.virtualenvs/python3.6/bin$ source activate
(python3.6) appleyuchi@ubuntu:~/.virtualenvs/python3.6/bin$ pip -V
pip 9.0.1 from /home/appleyuchi/.virtualenvs/python3.6/lib/python3.6/site-packages (python 3.6)
(python3.6) appleyuchi@ubuntu:~/.virtualenvs/python3.6/bin$
?
總結(jié)
以上是生活随笔為你收集整理的virtualenv在Ubuntu18.10(64位)中的用法(命令和图形化建立虚拟环境)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python查询天气
- 下一篇: pycharm建立启动器命令