$ pyenv versions * system (set by /Users/xxx/.pyenv/version) 3.7.0
复制
查看可以安装的版本
1 2 3 4 5 6
复制
$ pyenv install -l Available versions: 2.1.3 2.2.3 ... stackless-3.5.4
复制
可以看到,可安装的版本有python2, python3, activepython, anaconda, ironpython, jython, pypy, stackless, etc.
安装指定版本
1 2 3 4 5 6
复制
$ pyenv install 2.7.15 python-build: use openssl from homebrew python-build: use readline from homebrew Installing Python-2.7.15... python-build: use readline from homebrew Installed Python-2.7.15 to /Users/xxx/.pyenv/versions/2.7.15
复制
注:Mac上安装可能会遇到The Python zlib extension was not compiled. Missing the zlib? 的错误,可以尝试CFLAGS="-I$(xcrun --show-sdk-path)/usr/include" pyenv install 2.7.15
更多错误,可查看项目的wiki中的常见问题
安装完毕一个python版本后,需要执行pyenv rehash 来更新后,才能看到已安装的版本
优先级
可以为当前目录、当前shell以及全局进行不同的python版本定义
遵循shell>local>global的优先级顺序
设置版本
1 2
复制
$ pyenv global 2.7.15 #设置全局版本,版本信息记录在~/.pyenv/version $ pyenv local 3.7.0 #设置当前目录的python版本,将在当前目录生成.python-version文件
$ pyenv virtualenvs 3.7.0/envs/common3 (created from /Users/abc/.pyenv/versions/3.7.0) common3 (created from /Users/abc/.pyenv/versions/3.7.0)
复制
创建virtualenv
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
复制
$ pyenv virtualenv 2.7.15 my2.7.15 Collecting virtualenv Downloading https://files.pythonhosted.org/packages/8f/f1/c0b069ca6cb44f9681715232e6d3d65c75866dd231c5e4a88e80a46634bb/virtualenv-16.3.0-py2.py3-none-any.whl (2.0MB) 100% |████████████████████████████████| 2.0MB 117kB/s Requirement already satisfied: setuptools>=18.0.0 in ./.pyenv/versions/2.7.15/lib/python2.7/site-packages (from virtualenv) (39.0.1) Installing collected packages: virtualenv Successfully installed virtualenv-16.3.0 New python executable in /Users/abc/.pyenv/versions/2.7.15/envs/my2.7.15/bin/python2.7 Also creating executable in /Users/abc/.pyenv/versions/2.7.15/envs/my2.7.15/bin/python Installing setuptools, pip, wheel... done. Requirement already satisfied: setuptools in /Users/abc/.pyenv/versions/2.7.15/envs/my2.7.15/lib/python2.7/site-packages Requirement already satisfied: pip in /Users/abc/.pyenv/versions/2.7.15/envs/my2.7.15/lib/python2.7/site-packages
$ pyenv virtualenvs 2.7.15/envs/my2.7.15 (created from /Users/abc/.pyenv/versions/2.7.15) 3.7.0/envs/common3 (created from /Users/abc/.pyenv/versions/3.7.0) common3 (created from /Users/abc/.pyenv/versions/3.7.0) my2.7.15 (created from /Users/abc/.pyenv/versions/2.7.15)