我在之前寫過一篇 Python學習教程 ,說過新手往往沒有注意環(huán)境隔離,導致Python項目包與包之間沖突。
并且Python2與3代碼執(zhí)行有問題等等。鑒于此我決定今天的 Python學習教程 給大家聊聊關于Python環(huán)境隔離問題以及如何進行隔離。
我們都知道Python開發(fā)項目很容易,項目也經(jīng)得起工業(yè)級別考驗。很多開發(fā)者都會習慣用Python開發(fā)項目,但是由于我們每個項目情況都有些不一樣。比如 今天可能用的是Django 1.8,明天可能用的是Django 2.1。
如果不進行環(huán)境隔離全局安裝就會導致包的沖突,依賴不同,出現(xiàn)問題。
這個時候每個應用都需要一套「獨立」的Python運行環(huán)境。而Virtualenv就是拿來為應用創(chuàng)建這一套「隔離」的Python運行環(huán)境。
首先用pip安裝
pip install virtualenv
創(chuàng)建虛擬環(huán)境
sitin@test:/data/opt/test$ virtualenv venv
sitin@test:/data/opt/test$ source venv/bin/activate
(venv) sitin@test:/data/opt/test$ deactivate
sitin@test:/data/opt/test$
上面如果我們配置了vitualenvwrapper會更加方便切換進入虛擬環(huán)境,做到一鍵切換進入虛擬環(huán)境。不用每次都去到指定項目目錄里面進行 source venv/bin/activate。
安裝如下:
pip install virtualenvwrappermkdir ~/.virtualenvs
安裝好了,你可以在你的.bashrc或者.zshrc配置virtualenvwrapper,配置如下。
export WORKON_HOME=$HOME/.virtualenvs # 指定目錄 export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages' # 隔離系統(tǒng)site-packages export PIP_VIRTUALENV_BASE=$WORKON_HOME export PIP_RESPECT_VIRTUALENV=true if [[ -r /usr/local/bin/virtualenvwrapper.sh ]]; then source /usr/local/bin/virtualenvwrapper.sh else echo "WARNING: Can't find virtualenvwrapper.sh" fi
配置好我們可以創(chuàng)建我們虛擬環(huán)境方式如下:
mkvirtualenv your_project #創(chuàng)建rmvitualenv your_project #刪除workon # 列出項目workon your_project # 進去某個項目
通過上面這種方式,讓我們更加方便切換進入虛擬環(huán)境了。
說了vitualenv,vitualenvwrapper,進行Python 包的環(huán)境隔離,我們接下來聊聊我們 終極利器 pyenv -- Python版本的隔離。
我們都知道python存在2,3問題,我們經(jīng)常需要維護老版本Python2項目,也要考慮新版本Python3的遷移。
說它是終極利器是它除了python版本問題,也可以結合virtualenv,vitualenvwrapper一起使用。
目前pyenv這個庫在github上面有14K+的star,可見受到到了非常多的關注。
這里面我們直接進入Mac的安裝環(huán)節(jié):
brew install pyenvbrew install pyenv-virtualenvbrew install pyenv-virtualenvwrapper
把下面的配置加入到我們的shell環(huán)境中,比如我的就是.zshrc。
# ---pyenv--- export PATH="$HOME/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
配置好之后,我們可以看到pyenv的shell補全,如下圖。
本文題目:終極版Python學習教程:一篇文章講清楚Python虛擬環(huán)境-創(chuàng)新互聯(lián)
轉載注明:http://chinadenli.net/article2/idgic.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信小程序、網(wǎng)站導航、網(wǎng)站設計公司、虛擬主機、標簽優(yōu)化、關鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內容