【转】Mac系统更新Python

转自:http://blog.richieliu.com/blog/2013/05/19/macxi-tong-geng-xin-python/


Mac的系统都有预装python,这给我们的开发工作带来了极大的便利。不过苹果似乎对维护这些三方的语言(包括ruby)并没有什么热情,因此如果我们想要用上最新版的python,就需要自己动手了。

以我自己的mountain lion系统为例,在terminal输入

$python --version

会显示’python 2.7.3’,这是我们当前的python版本。而在python官网上目前的版本为2.7.9,接下来我们就来演示如何将系统的版本升级为2.7.9.

1. 下载并安装最新版Python

这里选择适合自己的python版本,这里我选择的是Python 2.7.9 Mac OS X 64-bit/32-bit x86-64/i386 Installer。使用下载的DMG进行安装,系统会自动将python安装至/Library/Frameworks/Python.framework。需要注意的是,系统的python版本是在/System/Library/Frameworks/Python.framework,接下来我们就将新安装的版本替换至此。

2. 替换Python版本

这里比较简单,直接执行

$sudo rm -R /System/Library/Frameworks/Python.framework/Versions/2.7
$sudo cp -R /Library/Frameworks/Python.framework/Versions/2.7 /System/Library/Frameworks/Python.framework/Versions/2.7

3. 修复Group属性

$sudo chown -R root:wheel /System/Library/Frameworks/Python.framework/Versions/2.7

4. 修复Current链接

这里我们需要将/System/Library/Frameworks/Python.framework/Versions/Current链接到替换后的Python版本,执行

$sudo rm /System/Library/Frameworks/Python.framework/Versions/Current
$sudo ln -s /Library/Frameworks/Python.framework/Versions/2.7 /System/Library/Frameworks/Python.framework/Versions/Current

5. 替换/usr/bin中的版本

这一步比较关键,而且容易忘记。因为系统在/usr/bin目录中会存放Python相关的一些可执行文件,所以如果我们不替换此目录的文件,会导致Python执行的时候依然会使用旧版本。这里我们需要将/System/Library/Frameworks/Python.framework/Versions/Current中对应的文件替换至此,具体需要替换的是pydocpythonpythonwpython-config这四个文件。执行

$sudo rm /usr/bin/pydoc
$sudo rm /usr/bin/python
$sudo rm /usr/bin/pythonw
$sudo rm /usr/bin/python-config
$sudo ln -s /System/Library/Frameworks/Python.framework/Versions/Current/bin/pydoc /usr/bin/pydoc
$sudo ln -s /System/Library/Frameworks/Python.framework/Versions/Current/bin/python /usr/bin/python
$sudo ln -s /System/Library/Frameworks/Python.framework/Versions/Current/bin/pythonw /usr/bin/pythonw
$sudo ln -s /System/Library/Frameworks/Python.framework/Versions/Current/bin/python-config /usr/bin/python-config

6. 编辑.bash_profile

在第1步Python进行安装的时候会自动修改~/.bash_profile文件,主要是指定可执行文件的路径。由于我们已经将系统版本进行过替换,所以不需要再在此文件进行任何修改。这里我们只需要删除新加的修改

PATH="/System/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH

,或者将备份文件.bash_profile.pysave恢复即可。

PATH="/System/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH

7. 生效.bash_profile

执行

$source ~/.bash_profile

至此,所有的替换工作已经完成,我们可以进行一下验证。重启terminal,执行

$python --version

,成功的话就会打印出我们所替换的最新版本。

此方法不但可以替换2.x的版本,对于3.x的版本也同样适用。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值