mac 一般使用bash作为默认shell
Mac系统的环境变量,加载顺序为:
/etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc source ~/.zshrc
查版本号:python -V
2.7.10
安装配置Python版本管理器pyenv
安装pyenv
brew install pyenv
或者:
$ curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash
安装完成后, pyenv 命令还没有加进系统的环境变量,需要将如下内容加到 ~/.zshrc 中,然后执行 source ~/.zshrc 。
if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi
或者
export PATH=$HOME/.pyenv/bin:$PATH eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
3.pyenv install --list 查看可以安装的python版本
jddeiMac:new_socket_tool iosTest$ pyenv install --list
Available versions:
2.1.3
2.2.3
....安装指定版本的Python
pyenv install 3.5.0查看已经安装了哪些版本的Python:pyenv versions
jddeiMac:new_socket_tool iosTest$ pyenv versions system 2.7.8 *3.5.0 (set by /Users/iosTest/Desktop/new_socket_tool/.python-version)
其中版本号前面有*号的就是当前生效的版本,查看当前生效的版本也可以用
pyenv version
3.5.0 (set by /Users/iosTest/Desktop/new_socket_tool/.python-version)
特别建议:
系统全局用系统默认的Python比较好,不建议直接对其操作
pyenv global system
用local进行指定版本切换,一般开发环境使用。
pyenv local 2.7.8
对当前用户的临时设定Python版本,退出后失效
pyenv shell 3.5.0
取消某版本切换
$ unset PYENV_VERSION
$ python -V
Python 2.7.8
通常情况下,对于特定的项目,我们可能需要切换不同的Python环境,这个时候就可以通过 pyenv local PYTHON_VERSION 命令来修改 当前目录 的Python环境。命令执行后,会在当前目录中生成一个 .python-version 文件(如果该文件已存在,则修改该文件的内容),里面记录着当前目录使用的Python版本号。
ddeiMac:new_socket_tool iosTest$ cat ~/.pyenv/version 2.7.8 jddeiMac:new_socket_tool iosTest$ pyenv local 3.5.0 jddeiMac:new_socket_tool iosTest$ cat .python-version 3.5.0 jddeiMac:new_socket_tool iosTest$ cat ~/.pyenv/version 2.7.8 jddeiMac:new_socket_tool iosTest$ pyenv version 3.5.0 (set by /Users/iosTest/Desktop/new_socket_tool/.python-version) jddeiMac:new_socket_tool iosTest$ pip -V pip 7.1.2 from /Users/iosTest/.pyenv/versions/3.5.0/lib/python3.5/site-packages (python 3.5)
当pyenv 切换python版本失效时,可以重新 source ~/.zshrc 尝试;
pyenv 的相关命令通过pyenv -h 和 pyenv commands来查看
输出python 路径:
1,terminal :
input: which Python
2, terminal:
input : python --->import sys ----> print sys.path
参考:http://blog.csdn.net/angel22xu/article/details/45443019
http://www.cnblogs.com/mingaixin/p/6295963.html
https://github.com/pyenv/pyenv/wiki/Common-build-problems
http://www.jb51.net/article/109542.htm