您好,登錄后才能下訂單哦!
簡介
pyenv 是一個開源的 Python 版本管理工具,可以輕松地給系統(tǒng)安裝任意 Python 版本,想玩哪個版本,瞬間就可以切換。有了 pyenv,我們不需要再為系統(tǒng)多版本 Python 共存問題而發(fā)愁,也不用為手動編譯安裝其他 Python 版本而浪費時間,只需要執(zhí)行一條簡單的命令就可以切換并使用任何其他版本,該工具真正地做到了開箱即用,簡單實用。
virtualenv 是一個用來創(chuàng)建完全隔離的 Python 虛擬環(huán)境的工具,可以為每個項目工程創(chuàng)建一套獨立的 Python 環(huán)境,從而可以解決不同工程對 Python 包,或者版本的依賴問題。假如有 A 和 B 兩個工程,A 工程代碼要跑起來需要 requests 1.18.4,而 B 工程跑起來需要 requests 2.18.4,這樣在一個系統(tǒng)中就無法滿足兩個工程同時運行問題了。最好的解決辦法是用 virtualenv 給每個工程創(chuàng)建一個完全隔離的 Python 虛擬環(huán)境,給每個虛擬環(huán)境安裝相應(yīng)版本的包,讓程序使用對應(yīng)的虛擬環(huán)境運行即可。這樣既不影響系統(tǒng) Python 環(huán)境,也能保證任何版本的 Python 程序可以在同一系統(tǒng)中運行。
最佳實踐:使用 pyenv 安裝任何版本的 Python,然后用 virtualenv 創(chuàng)建虛擬環(huán)境時指定需要的 Python 版本路徑,這樣就可以創(chuàng)建任何版本的虛擬環(huán)境,這樣的實踐真是極好的!
pyenv 的安裝及使用
1. 安裝
將 pyenv 安裝到 ~/.pyenv 目錄(當然你可以安裝到任意其他路徑)
git clone https://github.com/yyuu/pyenv.git ~/.pyenv
配置環(huán)境變量(我的 Shell 是 zsh,如果是 bash,請?zhí)砑拥?~/.bashrc)
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
添加 pyenv 初始化(我的 Shell 是 zsh,如果是 bash,請?zhí)砑拥?~/.bashrc)
echo 'eval "$(pyenv init -)"' >> ~/.zshrc
使當前 Shell 配置生效,完成安裝
exec $SHELL source ~/.zshrc
2. 使用
查看有哪些 Python 版本可以安裝
pyenv install --list
安裝某個 Python 版本
pyenv install -v 3.6.4
查看當前 Python 版本情況(* 表示系統(tǒng)當前的 Python 版本,system表示系統(tǒng)初始版本)
$ pyenv versions system 2.6.7 * 3.6.4 (set by /Users/haohao/.pyenv/version)
切換 Python 版本(切換之后查看當前版本)
$ pyenv global 3.6.4 $ pyenv versions system * 3.6.4 (set by /Users/haohao/.pyenv/version) $ python -V Python 3.6.4
卸載某個 Python 版本
pyenv uninstall 3.6.4
virtualenv 的安裝及使用
1. 安裝
sudo pip install virtualenv
2. 使用
下面我們使用 virtualenv 創(chuàng)建一個完全隔離的 Python 虛擬環(huán)境:
1.新建一個目錄(一般用來用作工程路徑)
$ mkdir myproject
2.進入目錄創(chuàng)建一個完全獨立干凈的虛擬環(huán)境
如果 virtualenv 后面不加任何參數(shù),那么默認創(chuàng)建的虛擬環(huán)境的 Python 版本是系統(tǒng)當前版本,如果要創(chuàng)建其他版本,可以使用 -p 參數(shù)指定其他版本的 python 可執(zhí)行文件路徑??蓤?zhí)行文件可以在上一步安裝的 pyenv 的 ~/.pyenv/versions 路徑找到,該路徑是 pyenv 管理的所有 Python 版本路徑。
# 使用系統(tǒng)當前的 Python 版本創(chuàng)建虛擬環(huán)境 $ virtualenv venv New python executable in /Users/haohao/PycharmProjects/myproject/venv/bin/python # 創(chuàng)建虛擬環(huán)境時指定 Python 版本 $ virtualenv -p ~/.pyenv/versions/2.6.7/bin/python venv Running virtualenv with interpreter /Users/haohao/.pyenv/versions/2.6.7/bin/python New python executable in /Users/haohao/PycharmProjects/myproject/venv/bin/python Installing setuptools<37, pip, wheel<0.30...done.
3.激活創(chuàng)建的虛擬環(huán)境并使用
可以看出當前虛擬環(huán)境版本已經(jīng)是 Python 2.6.7 了,而且所在路徑確實是在上一步創(chuàng)建的虛擬環(huán)境路徑。接下來使用 pip 安裝的任何包都會安裝在虛擬環(huán)境目錄里面,不會安裝在系統(tǒng)標準目錄,從而保證當前環(huán)境是絕對干凈的,對于系統(tǒng)是完全隔離的。
$ source venv/bin/activate $ which python /Users/haohao/PycharmProjects/myproject/venv/bin/python $ python -V Python 2.6.7
4.退出虛擬環(huán)境,回到系統(tǒng)版本
$ deactivate
以上這篇對Python 兩大環(huán)境管理神器 pyenv 和 virtualenv詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。