Mac自带Python(2.7)升级到3.5
如果要运行xcode请不要升级,不支持的.建议大家不要升级
1、下载、安装Python最新版本(3.5),
2、删除Mac自带的Python,命令如下:
sudo rm -R /System/Library/Frameworks/Python.framework/Versions/2.7 (也可不执行此命令)
把第一步里安装好的Python目录移到原本系统所持有的目录位置,命令如下:
sudo mv /Library/Frameworks/Python.framework/Versions/3.5 /System/Library/Frameworks/Python.framework/Versions
3、修改文件所属的Group,设置Group为wheel,原来系统自带的就是这样的,命令如下:
sudo chown -R root:wheel /System/Library/Frameworks/Python.framework/Versions/3.5
4、更新一下Current的Link,在Versions的目录里有一个Current的link,是指向当前的Python版本,原始是指向系统自带的Python2.7.2,我们把它删除后,link就失效了,所以需要重新链一下,命令如下:
sudo rm /System/Library/Frameworks/Python.framework/Versions/Current
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.5 /System/Library/Frameworks/Python.framework/Versions/Current
5、重新链接可执行文件
1) 先把系统原来的执行文件删掉
sudo rm /usr/bin/pydoc
sudo rm /usr/bin/python
sudo rm /usr/bin/pythonw
sudo rm /usr/bin/python-config
2) 建立新的链接
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.5/bin/pydoc3.5 /usr/bin/pydoc
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 /usr/bin/python
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.5/bin/pythonw3.5 /usr/bin/pythonw
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5m-config /usr/bin/python-config
6、 复制easy-install命令文件
将/System/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 复制到 /usr/bin中
删除原有的easy_install文件,
修改easy_install3.5修改成easy_install
7、 修复其他链接
输入sudo -s进行超级用户
将以下命令放入up.sh文件中
python_param_list=`cd /usr/local/bin && ls -al |grep "Python"|awk 'ORS=" " {print $9}'`
for i in $python_param_list;do
echo "info: $i"
rm -f /usr/local/bin/${i}
ln -sv /System/Library/Frameworks/Python.framework/Versions/3.5/bin/${i} /usr/local/bin/${i}
done
在命令窗口运行./up.sh
8、 环境变量要修改为最新的版本号
修改bash_profile文件如下:
export PATH=/System/Library/Frameworks/Python.framework/Versions/3.5/bin:${PATH}'
9、输入python命令,查看版本python
Python 3.5.3 (v3.5.3:1880cb95a742, Jan 16 2017, 08:49:46)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.