欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

終極利器|一篇文章講清楚Python虛擬環境

系統 1701 0
閱讀更多

全文閱讀6分鐘

我在之前寫過一篇「 Python新手常見的幾個問題及工具推薦 」說過新手往往沒有注意環境隔離,導致Python項目包與包之間沖突。

并且Python2與3代碼執行有問題等等。鑒于此我今天給大家聊聊關于Python環境隔離問題以及如何進行隔離。

Virtualenv

我們都知道Python開發項目很容易,項目也經得起工業級別考驗。很多開發者都會習慣用Python開發項目,但是由于我們每個項目情況都有些不一樣。比如 今天可能用的是Django 1.8,明天可能用的是Django 2.1。

如果不進行環境隔離全局安裝就會導致包的沖突,依賴不同,出現問題。

這個時候每個應用都需要一套「獨立」的Python運行環境。而Virtualenv就是拿來為應用創建這一套「隔離」的Python運行環境。

首先用pip安裝

pip install virtualenv

創建虛擬環境

            
              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$

            
          

Virtualenvwrapper

上面如果我們配置了vitualenvwrapper會更加方便切換進入虛擬環境,做到一鍵切換進入虛擬環境。不用每次都去到指定項目目錄里面進行 source venv/bin/activate

安裝如下:

pip install virtualenvwrapper

安裝好了,你可以在你的.bashrc或者.zshrc配置virtualenvwrapper,配置如下。

            
              export?WORKON_HOME=$HOME/.virtualenvs??#?指定目錄
export?VIRTUALENVWRAPPER_PYTHON=/usr/bin/python
export?VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'?#?隔離系統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

            
          

配置好我們可以創建我們虛擬環境方式如下:

mkvirtualenv your_project #創建

通過上面這種方式,讓我們更加方便切換進入虛擬環境了。

Pyenv

說了vitualenv,vitualenvwrapper,進行Python 包的環境隔離,我們接下來聊聊我們 終極利器 pyenv -- Python版本的隔離。

我們都知道python存在2,3問題,我們經常需要維護老版本Python2項目,也要考慮新版本Python3的遷移。

說它是終極利器是它除了python版本問題,也可以結合virtualenv, vitualenvwrapper一起使用。

目前pyenv這個庫在github上面有14K+的star,可見受到到了非常多的關注。

這里面我們直接進入Mac的安裝環節:

brew install pyenv

把下面的配置加入到我們的shell環境中,比如我的就是.zshrc。

            
              #?---pyenv---
export?PATH="$HOME/.pyenv/bin:$PATH"
eval?"$(pyenv?init?-)"
eval?"$(pyenv?virtualenv-init?-)"

            
          

配置好之后,我們可以看到pyenv的shell補全,如下圖。

終極利器|一篇文章講清楚Python虛擬環境_第1張圖片

pyenv的具體使用方式:

            
              pyenv?install?-l?#?獲取安裝列表
pyenv?install?3.7.1?#?安裝python3.7
pyenv?global?3.7.1?#?設置全局python
pyenv?virtualenv?test-pyenv-venv?#?創建虛擬包
pyenv?activate?test-pyenv-venv?#?進入虛擬環境
pyenv?deactivate??#?退出
...

            
          

這里面我就不過多演示使用了,看一個官方的配圖。

終極利器|一篇文章講清楚Python虛擬環境_第2張圖片

Tox

上面我們提到了關于使用pyenv進行python2,3的版本隔離情況,實際過程中想要寫出兼容Python2,3的代碼,那么我們不得不提一下這個測試工具--tox。

tox提供了非常方便的方式來運行我們的不同環境下的測試,非常方便我們在寫測試的時候,同時對Python2,Python3的環境進行測試,這里面強烈推薦大家使用。

最后關于虛擬環境實際Python3 官方有原生venv支持虛擬環境代替vitualenv目前接受度還較低,大家感興趣可以去了解下。我們虛擬環境就暫時聊到這兒,歡迎你給我留言,談談你的一些看法或思考。

終極利器|一篇文章講清楚Python虛擬環境_第3張圖片

往期回顧:

習慣養成計劃


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 综合爱爱 | 国产精品无码永久免费888 | 久草福利在线 | 精品小视频在线 | 久久综合综合久久 | 九色视频网 | 国产日本在线播放 | 色婷亚洲 | 色3344 | 久久草视频这里只精品 | 95视频在线播放 | 国产深夜福利在线观看网站 | 91最新视频| 精品国产一区二区三区香蕉沈先生 | 成在线人免费视频 | 国产精品一区二区三区在线播放 | 亚洲一区二区三区影院 | 欧美女人天堂 | 三级黄色片在线观看 | 欧美一区二区三区免费高 | 午夜小视频免费 | 天堂在线91| 福利色 | 色综合久久综合欧美综合图片 | 国产成人一区二区三区 | 四月婷婷七月婷婷综合 | 欧美高清正版在线 | 99久久这里只有精品 | 日韩在线欧美 | 偷偷要色偷偷 | 成人伊人 | 欧美最新一区二区三区四区 | 欧美精品一区二区三区在线播放 | 国产一区二区免费 | 91香焦视频 | 91精品一区二区三区久久久久久 | 99久久精品费精品国产一区二区 | 波多野中文字幕s | 黄色日本视频 | 成人免费福利 | 天天夜夜骑 |