91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

終極版Python學習教程:一篇文章講清楚Python虛擬環境

發布時間:2020-08-16 08:36:11 來源:ITPUB博客 閱讀:199 作者:千鋒Python唐小強 欄目:編程語言

我在之前寫過一篇 Python學習教程 ,說過新手往往沒有注意環境隔離,導致Python項目包與包之間沖突。

并且Python2與3代碼執行有問題等等。鑒于此我決定今天的 Python學習教程 給大家聊聊關于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 virtualenvwrappermkdir ~/.virtualenvs

安裝好了,你可以在你的.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 #創建rmvitualenv your_project #刪除workon # 列出項目workon your_project # 進去某個項目

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

Pyenv

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

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

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

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

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

brew install pyenvbrew install pyenv-virtualenvbrew install pyenv-virtualenvwrapper

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

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

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


終極版Python學習教程:一篇文章講清楚Python虛擬環境


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學習教程:一篇文章講清楚Python虛擬環境


Tox

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

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

最后關于虛擬環境實際Python3 官方有原生venv支持虛擬環境代替vitualenv目前接受度還較低,大家感興趣可以去了解下。本期的虛擬環境的 Python學習教程 就暫時聊到這兒,有不同看法的伙伴歡迎大家留言哈


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

革吉县| 文化| 南丹县| 太仓市| 焉耆| 武汉市| 宣城市| 仪征市| 鸡泽县| 光泽县| 青河县| 长泰县| 济阳县| 迁西县| 怀来县| 荣成市| 乐昌市| 武胜县| 田阳县| 兰州市| 四川省| 祁东县| 普宁市| 贵定县| 无棣县| 九江市| 佛教| 华宁县| 泸溪县| 辽阳市| 镇宁| 徐闻县| 出国| 泰和县| 伊吾县| 郑州市| 瓮安县| 墨脱县| 南开区| 芜湖市| 当阳市|