python虚拟环境 pyenv_Python 虚拟环境 pyenv、venv(pyvenv)、virtualenv之间的区别
請(qǐng)參考連接 https://blog.zengrong.net/post/2167.html
https://blog.csdn.net/lanonjj/article/details/51050212
為避免鏈接失效,把原文做了復(fù)制黏貼
另外在python3.6中,虛擬應(yīng)該用如下命令創(chuàng)建
python3 -m venv /path/to/new/virtual/environment
直接用pyvenv/path/to/new/virtual/environment
創(chuàng)建也能成功,但是會(huì)有一個(gè)warning,具體解釋可以參考這個(gè)文章https://docs.python.org/3/library/venv.html
yy1s@linux-9qk9:~> pyvenv monitor2
WARNING: the pyenv script is deprecated in favour of `python3.6 -m venv`
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
為了解決包依賴、安裝權(quán)限和 python 版本問題,程序員們制造了許多工具。我把它們做一個(gè)匯總,便于查找。
這里介紹的工具都是當(dāng)前流行的,不會(huì)包含已經(jīng)不再維護(hù)的工具。
virtualenv
virtualenv?是目前最流行的 python 虛擬環(huán)境配置工具。它不僅同時(shí)支持 python2 和 python3,而且可以為每個(gè)虛擬環(huán)境指定 python 解釋器,并選擇不繼承基礎(chǔ)版本的包。
virtualenvwrapper
關(guān)于為什么使用 shell 腳本開發(fā),作者專門?進(jìn)行了解釋?。
virtualenvwrapper 還有針對(duì) vim 用戶和 emacs 用戶的?擴(kuò)展?。
virtualenvwrapper 能支持?bash/ksh/zsh?,所以我們可以看出,它不支持 Windows。
virtualenvwrapper-win
由于 virtualenvwrapper 基于 shell 開發(fā),因此不能在 Windows 系統(tǒng)上使用。但我們可以使用針對(duì) Windows batch shell 的?virtualenvwrapper-win。
venv
Python 從3.3 版本開始,自帶了一個(gè)虛擬環(huán)境?venv,在?PEP-405?中可以看到它的詳細(xì)介紹。它的很多操作都和 virtualenv 類似。
因?yàn)槭菑?3.3 版本開始自帶的,這個(gè)工具也僅僅支持 python 3.3 和以后版本。所以,要在 python2 上使用虛擬環(huán)境,依然要利用?virtualenv?。
在 *nix 系統(tǒng)上,可以直接執(zhí)行?pyvenv /path/to/new/virtual/enviorment?來(lái)創(chuàng)建一個(gè)虛擬環(huán)境,在 Windows 系統(tǒng)上,則可以使用?python -m venv myenv?來(lái)創(chuàng)建。
2015-04-18 更新:
pyvenv 3.4 在 Ubuntu 14.04 下有 bug,如下:
1
2
3
pyvenv ? python3 -m venv blog
Error: Command '['/home/zrong/pyvenv/blog/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1
pyvenv ? pyvenv-3.4 --without-pip blog
解決方法是創(chuàng)建一個(gè)不含 pip 的虛擬環(huán)境,然后手動(dòng)安裝 pip :
1
2
3
4
pyvenv-3.4 --without-pip venvdir
source venvdir/bin/activate
curl https://bootstrap.pypa.io/get-pip.py | python
source venvdir/bin/activate
參見:
pyenv
我們可以用許多方法讓不同的 Python 版本在系統(tǒng)上共存。
例如在 OS X 上,如果使用官方提供的 DMG 版本安裝,那么自帶的 python2 和新安裝的 python3 是可以共存的。python3 可以使用?python3?來(lái)調(diào)用,甚至?pip?都可以使用?pip3?來(lái)調(diào)用。
但如果還有其它小版本需要共存么?我要記憶多少命令呢?
pyenv?用來(lái)解決這類問題。它可以安裝、卸載、編譯、管理多個(gè) python 版本,并隨時(shí)將其中一個(gè)設(shè)置為工作環(huán)境。
pyenv 不支持 Windows 系統(tǒng)。
pywin
Windows 上有一個(gè) pyenv 的替代品,是?pywin?。它用來(lái)在多個(gè)安裝的 Python 版本之間進(jìn)行切換,也支持?MSYS/MINGW32?。
Python Launcher for Windows
Python 從3.3版本開始(又是3.3?),在 Windows 系統(tǒng)中自帶了一個(gè)?py.exe?啟動(dòng)工具。如果你是使用 Python.org 官網(wǎng)下載的安裝包安裝的 Python 3.3(或更新版本)環(huán)境,那么可以直接在命令提示符中使用這個(gè)工具。
py?可以打開默認(rèn)的 python 提示符;?py -2.7?和?py -3?打開對(duì)應(yīng)的 Python 版本。
—- 分割線 —-
上面介紹的工具中,前四個(gè)是虛擬環(huán)境切換工具,后三個(gè)是 Python 版本環(huán)境切換工具。將這兩套工具結(jié)合使用,可以完美解決 python 多版本環(huán)境的問題。
(全文完)
總結(jié)
以上是生活随笔為你收集整理的python虚拟环境 pyenv_Python 虚拟环境 pyenv、venv(pyvenv)、virtualenv之间的区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JAVA入门级教学之(定义一个学生类)
- 下一篇: python实现线性回归预测不用skle