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