python virtual enviorments
為了解決包依賴、安裝權限和 python 版本問題,程序員們制造了許多工具。我把它們做一個匯總,便于查找。 這里介紹的工具都是當前流行的,不會包含已經不再維護的工具。 virtualenvvirtualenv 是目前最流行的 python 虛擬環境配置工具。它不僅同時支持 python2 和 python3,而且可以為每個虛擬環境指定 python 解釋器,并選擇不繼承基礎版本的包。 virtualenvwrapper顧名思義,virtualenvwrapper 是對 virtualenv 的一個封裝,目的是使后者更好用。 關于為什么使用 shell 腳本開發,作者專門 進行了解釋 。 virtualenvwrapper 還有針對 vim 用戶和 emacs 用戶的 擴展 。 virtualenvwrapper 能支持 virtualenvwrapper-win由于 virtualenvwrapper 基于 shell 開發,因此不能在 Windows 系統上使用。但我們可以使用針對 Windows batch shell 的 virtualenvwrapper-win。 venvPython 從3.3 版本開始,自帶了一個虛擬環境 venv,在 PEP-405 中可以看到它的詳細介紹。它的很多操作都和 virtualenv 類似。 因為是從 3.3 版本開始自帶的,這個工具也僅僅支持 python 3.3 和以后版本。所以,要在 python2 上使用虛擬環境,依然要利用 virtualenv 。 在 *nix 系統上,可以直接執行 pyvenv 3.4 在 Ubuntu 14.04 下有 bug,如下:
解決方法是創建一個不含 pip 的虛擬環境,然后手動安裝 pip :
參見: pyenv我們可以用許多方法讓不同的 Python 版本在系統上共存。 例如在 OS X 上,如果使用官方提供的 DMG 版本安裝,那么自帶的 python2 和新安裝的 python3 是可以共存的。python3 可以使用 但如果還有其它小版本需要共存么?我要記憶多少命令呢? pyenv 用來解決這類問題。它可以安裝、卸載、編譯、管理多個 python 版本,并隨時將其中一個設置為工作環境。 pyenv 不支持 Windows 系統。 pywinWindows 上有一個 pyenv 的替代品,是 pywin 。它用來在多個安裝的 Python 版本之間進行切換,也支持 MSYS/MINGW32 。 Python Launcher for WindowsPython 從3.3版本開始(又是3.3?),在 Windows 系統中自帶了一個 py.exe 啟動工具。如果你是使用 Python.org 官網下載的安裝包安裝的 Python 3.3(或更新版本)環境,那么可以直接在命令提示符中使用這個工具。
—- 分割線 —- 上面介紹的工具中,前四個是虛擬環境切換工具,后三個是 Python 版本環境切換工具。將這兩套工具結合使用,可以完美解決 python 多版本環境的問題。 (全文完) |
|
來自: herowuking > 《Python》