pyenv
pyenv是用來幹什麼的?
pyenv是用來管理不同版本的python, 用來快速切換python版本的。
mac上的安裝
brew install pyenv
使用
安裝想要的python版本
pyenv install -l : 查看當前可以安裝的python版本有哪些。
pyenv install 3.4.2 :用來安裝python3.4.2這個版本。
查看當前已經安裝的python版本
pyenv versions: 查看當前所有的python版本
pyenv version: 查看當前文件中使用的版本
版本切換:
pyenv支持配置全局的python,和局部文件夾中的python環境。有這個功能,就可以在不同的項目中,使用不同的python版本了。
我查看了一下隱藏文件,其實pyenv是通過在文件中添加.python-version這個配置文件來控制文件夾的python版本的。
pyenv global: 用來查看和配置全局的python版本
pyenv local: 用來查看和配置全局的python。
virtualenv
virtualenv是用來幹什麼的
virtualenv是相當於建了一個獨立的python環境,包括解釋器版本,乾淨的三方庫等。
安裝
pip install virtualenv
使用
創建一個virtualenv的環境
virtualenv -p /usr/bin/python2.7 venv #用來創建一個虛擬python環境
rm -rf ven #刪除python虛擬環境。
啓用虛擬環境:
source venv/bin/activate #啓用。啓用後,命令行左側會有(venv)標識啓用了這個環境
deactivate #退出虛擬環境
在virtualenv中安裝包:
pip install -r requirements.txt #安裝一些三方庫
pip uninstall -y -r requirements.txt #卸載一些三方庫
pip freeze > requirements.txt #把已經裝好的三方庫凍結起來。
參考
這篇文檔寫得更全,還介紹了一些其他的python環境管理工具。有興趣的可以看。
https://pythonguidecn.readthedocs.io/zh/latest/dev/virtualenvs.html#id13
總結
基本上,有了以上兩個工具,就可以很好的管理不同項目的python版本,以及相應環境的三方庫依賴了。當然,根本pyenv的特性,其實也可以跟pipenv結合,也可以很好的管理項目的版本和三方庫。