0.系统版本
angel:~ $ more /System/Library/CoreServices/SystemVersion.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ProductBuildVersion</key>
<string>14C109</string>
<key>ProductCopyright</key>
<string>1983-2015 Apple Inc.</string>
<key>ProductName</key>
<string>Mac OS X</string>
<key>ProductUserVisibleVersion</key>
<string>10.10.2</string>
<key>ProductVersion</key>
<string>10.10.2</string>
</dict>
</plist>
1.安装homebrew
打开终端输入如下命令,就可以安装homebrew。
angel:~ $ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
测试是否安装成功
angel:~ $ brew -v
Homebrew 0.9.5
表示安装成功。
参照 http://brew.sh/index_zh-cn.html
2.安装pyenv,pyenv-virtualenv
angel:~ $ brew install pyenv
angel:~ $ brew install pyenv-virtualenv
验证是否安装成功
angel:~ $ pyenv -v
pyenv 20150326
angel:~ $ pyenv-virtualenv --version
/usr/local/bin/pyenv-virtualenv: line 127: pyenv-prefix: command not found
/usr/local/bin/pyenv-virtualenv: line 130: pyenv-prefix: command not found
pyenv-virtualenv 20150119 (virtualenv unknown)
pyenv安装成功,pyenv-virtualenv有点异常先略过(具体原因还未调查,倒是不影响后面使用,有看官知道原因的欢迎交流)。
3.pyenv install --list 查看可以安装的python版本
angel:~ $ pyenv install --list
Available versions:
2.7
2.7.1
2.7.2
2.7.3
2.7.4
2.7.5
2.7.6
2.7.7
2.7.8
2.7.9
......(由于篇幅问题,此处略去3000字)
3.4.2
3.4.3
3.5.0a1
3.5.0a2
3.5-dev
4.安装对应的python版本
angel:~ $ pyenv install 3.4.3
pyenv: /Users/angel/.pyenv/versions/3.4.3 already exists
continue with installation? (y/N) N
我的电脑已经安装过3.4.3。。。
用pyenv versions可以查看目前正在使用的python版本,前面带星号(*)的就是表示当前使用的python版本(3.4.3)
angel:~ $ pyenv versions
system
* 3.4.3 (set by /Users/angel/.pyenv/version)
参照http://v2in.com/pyenv-installation-and-usage.html
http://seisman.info/python-pyenv.html
5.设定环境
在 .bashrc(或者.bash_profile)加入如下内容
没有如上2个文件,可以生成一个。
if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi
if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi
6.pyenv global 来回切换python版本
angel:~ $ python
Python 3.4.3 (default, May 2 2015, 21:56:04)
[GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.49)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
angel:~ $ pyenv versions
system
* 3.4.3 (set by /Users/angel/.pyenv/version)
angel:~ $ pyenv global system
angel:~ $ python
Python 2.7.6 (default, Sep 9 2014, 15:04:36)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
angel:~ $ pyenv versions
* system (set by /Users/angel/.pyenv/version)
3.4.3
angel:~ $ pyenv versions
“system"是系统默认版本
7.pyenv virtualenv创建虚拟python环境
angel:~ $ pyenv virtualenv 3.4.3 myvenv
Ignoring indexes: https://pypi.python.org/simple
Requirement already satisfied (use --upgrade to upgrade): setuptools in /Users/angel/.pyenv/versions/myvenv/lib/python3.4/site-packages
Requirement already satisfied (use --upgrade to upgrade): pip in /Users/angel/.pyenv/versions/myvenv/lib/python3.4/site-packages
angel:~ $ pyenv virtualenvs ‘查看python虚拟环境
myvenv (created from /Users/angel/.pyenv/versions/3.4.3)
angel:~ $ pyenv versions
* system (set by /Users/angel/.pyenv/version)
3.4.3
myvenv
angel:~ $ pyenv shell myvenv
pyenv-virtualenv: activate myvenv
(myvenv) angel:~ $ python
Python 3.4.3 (default, May 2 2015, 21:56:04)
[GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.49)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
(myvenv) angel:~ $ pyenv versions
system
3.4.3
* myvenv (set by PYENV_VERSION environment variable)
最后想说的是,pyenv 的相关命令通过pyenv -h 和 pyenv commands来查看,具体用法自己试验。
angel:~ $ pyenv commands
--version
activate
commands
completions
deactivate
exec
global
help
hooks
init
install
local
prefix
rehash
root
shell
shims
uninstall
version
version-file
version-file-read
version-file-write
version-name
version-origin
versions
virtualenv
virtualenv-init
virtualenv-prefix
virtualenvs
whence
which
angel:~ $ pyenv -h
pyenv 20150326
Usage: pyenv <command> [<args>]
Some useful pyenv commands are:
commands List all available pyenv commands
local Set or show the local application-specific Python version
global Set or show the global Python version
shell Set or show the shell-specific Python version
install Install a Python version using python-build
uninstall Uninstall a specific Python version
rehash Rehash pyenv shims (run this after installing executables)
version Show the current Python version and its origin
versions List all Python versions available to pyenv
which Display the full path to an executable
whence List all Python versions that contain the given executable
See `pyenv help <command>‘ for information on a specific command.
For full documentation, see: https://github.com/yyuu/pyenv#readme
考照http://tbb.co/managing-python-on-os-x-with-pyenv/
Good night !