Mac OS X10.9默认带了Python2.7,不过现在Python3.3.3出来了,如果想使用最新版本,赶紧升级下吧。基本步骤如下。

第1步:下载Python3.3
下载地址如下:
Python3.3
这里面有windows和mac os x下的安装程序,下载那个64位的安装程序(估计现在没有用32位的mac os x的吧)

第2步:
安装下载的img文件,安装完后的目录如下:
/Library/Frameworks/Python.framework/Versions/3.3
第3步:移动python的安装目录
原来的安装目录见第2步,不过所有的python都在
/System/Library/Frameworks/Python.framework/Versions
目录中,所以最好使用下面的命令移动一下,当然不移动也可以。但后面步骤中的某些路径需要修改下。
sudo mv /Library/Frameworks/Python.framework/Versions/3.3 /System/Library/Frameworks/Python.framework/Versions
第4步:改变Python安装目录的用户组为wheel
sudo chown -R root:wheel /System/Library/Frameworks/Python.framework/Versions/3.3
python2.7的用户组就是wheel,3.3也照葫芦画瓢吧!

第5步:修改Python当前安装目录的符号链接
在 /System/Library/Frameworks/Python.framework/Versions/目录下有一个Current,这是一个目 录符号链接,指向当前的Python版本。原来指向2.7的,现在指向3.3。所以应先删除Current。然后重新建立Current符号链接,命令如 下:
sudo rm /System/Library/Frameworks/Python.framework/Versions/Current
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.3 /System/Library/Frameworks/Python.framework/Versions/Current
第6步:删除旧的命令符号链接
在/usr/bin目录下有4个python命令的符号链接,使用下面的命令先删除
sudo rm /usr/bin/pydoc
sudo rm /usr/bin/python
sudo rm /usr/bin/pythonw
sudo rm /usr/bin/python-config
第7步:重新建立新的命令符号链接
将第6步删除的符号链接重新使用下面命令建立,它们都指向Python3.3了。
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.3/bin/pydoc3.3 /usr/bin/pydoc
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.3/bin/python3.3 /usr/bin/python
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.3/bin/pythonw3.3 /usr/bin/pythonw
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.3/bin/python3.3m-config /usr/bin/python-config
第8步:更新/root/.bash_profile文件中的路径
cd ~

vim .bash_profile
在.bash_profile插入下面的内容即可
// Setting PATH for Python 3.3
// The orginal version is saved in .bash_profile.pysave
PATH="/System/Library/Frameworks/Python.framework/Versions/3.3/bin:${PATH}"
export PATH
ok,现在重新启动一下Console,然后执行python --version,得到的就是Python 3.3.3。如果在程序中,需要使用下面代码获取python版本
import platform
print(platform.python_version())
如果还是用了如PyDev等IDE,仍然需要更新一下相关的路径。
现在可以使用最新的Python3.3.3了。

如果没有权限可以尝试一下方法:
Mac OS X 上如何切换默认的 Python 版本?
系统版本OS X Yosemite 10.10.3,自带的Python版本是2.7.9。
python3.4已经成功安装,在Terminal里输入命令python3.4可以正常用3.4.3工作,但是输入命令python则还是默认是2.7.9
请问该如何做到,在终端里直接输入“python”命令就会运行3.4.3的py版本?

谢谢各位回答,问题解决了

首先终端的“python”命令会执行/usr/local/bin下的“python”链接,链接相当于win下的快捷方式,现在链接指向了python2.7.9的解释器。我们改一下这个链接就好了,建议先备份这个“python”链接,比如像我:
mv /usr/local/bin/python /Users/python_backup
接着把3.4.3的解释器做一个链接到原目录下,请适当修改相关路径:
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.4/bin/python3.4 /usr/local/bin/python

或者
直接在.profile加一个alias就可以了。如果你的Terminal运行的shell是bash(默认),可以修改~/.bash_profile,添加下行(具体的path取决于你的python3安装路径):
alias python="/System/Library/Frameworks/Python.framework/Versions/3.4/bin/python3.4"

Mac python 2.X 升级到 3.X的更多相关文章

  1. Centos 6.4 python 2.6 升级到 2.7

    Centos 6.4 python 2.6 升级到 2.7 分类: Python Linux2013-09-13 21:35 37278人阅读 评论(2) 收藏 举报 一开始有这个需求,是因为用 Ya ...

  2. CentOS6.5 python 2.6升级到2.7

    在CentOS6.5下,将自带的python2.6.6升级到python2.7.3,解决方法如下: 下载python2.7.3包,并解压缩,输入命令:#wget http://python.org/f ...

  3. CentOS 7.0 下 Python 2.7 升级到 Python 3.5

    前段因为时间工作需要,要把 Centos 7.0 默认安装的 Python 2.7 升级到 Python 3.5. 具体操作如下: # 安装 gcc gcc-c++ 等编译工具软件 yum insta ...

  4. python - selenium 2 升级到最新版本

    python - selenium 2 升级到最新版本 之前一直用的是selenium 2.48 .firefox36 而实际用户的浏览器可能都有自动更新功能,所以版本基本上是最新的.所以这次专门做了 ...

  5. (干货分享)mac python+appium环境搭建

    因为mac本自带python2.x(不建议卸载,因为本本本身有很多依赖与此),所以装python3的过程极其坎坷,勉强装好后也总是各种报错.这次装appium环境,直接把原来的python3卸了,用h ...

  6. CentOS 6.X Python 2.6升级到Python 2.7 【转】

    前言:一些第三方框架为了降低复杂性,新的版本已经开始不支持旧版本的python,比如Django这个web框架1.8版本及以上仅仅只支持python2.7及以上版本(记忆中是这个1.8版本),pip安 ...

  7. mac下python2.7升级到3.6

    1. 前言 Mac系统自带python2.7,本文目的是将自带的python升级到3.6版本. 网上有本多的做法是让python2.7和python3.X两个版本共存,博主并不知道,是两版本共存好,还 ...

  8. Python: 使用pip升级所有包

    pip 当前内建命令并不支持升级所有已安装的Python模块. 列出当前安装的包:  pip list 列出可升级的包:  pip list --outdate 升级一个包:  pip install ...

  9. 【Mac + Python】苹果系统之安装Python3.6.x环境

    一.打开终端 输入:uname -a  ,查看电脑系统位数. 输入:python,查看mac系统python版本. 二.为了以后切换版本方便,安装pyenv进行版本切换以及升级. 参考文章:<M ...

随机推荐

  1. jQuery实现无刷新切换主题皮肤功能

    主题皮肤切换功能在很多网站和系统中应用,用户可以根据此功能设置自己喜欢的主题颜色风格,增强了用户体验.本文将围绕如何使用jQuery实现点击无刷新切换主题皮肤功能. 查看演示DEMO:https:// ...

  2. 关于Ajax无法下载文件到浏览器本地的问题

    最近在做网站的时候遇到这样一个功能,在如图所示的页面中,需要用户点击链接的时候,能够以异步Ajax的方式判断服务器中是否存储有相应的Excel文件,如果没有的话就提示用户没有找到,如果有的话就下载到用 ...

  3. bind的封装

    1.bind.call.apply三者的区别: 1)bind的返回值是一个函数体,不会被立即调用 2)call.apply会立即调用,第一个参数都是用来改变this的指向,两者的区别是前者传递参数的时 ...

  4. 处理springmvc的post和get提交参数乱码问题

    1,post 配置CharacterEncodingFilter拦截器 2,get 在tomcat的Connect 上配置uri 编码

  5. 【shell脚本】通过遍历文件的一种批量执行shell命令的方法。

    在分析数据时,经常会有许多机械重复的命令带入,作为一个半路出家的程序猿,我曾经对这种工作束手无策.不像一个熟手那样举重若轻的分析,感觉自己的生信分析完全是个体力活.为了打开这样的局面,我开始学习如何批 ...

  6. Python笔记 #19# 实现bpnn

    代码编辑&解释工具:Jupyter Notebook 快速入门 形象说明BP神经网络的用法(图片来自推特): Bpnn类最主要的三个方法: initialize方法,用于设定神经网络的层数.各 ...

  7. Eloquent JavaScript #12# Handling Events

    索引 Notes onclick removeEventListener Event objects stopPropagation event.target Default actions Key ...

  8. Golang实现冒泡排序法

    关于冒泡排序的原理请看本博客这篇文章冒泡排序法原理讲解及PHP代码示例 //代码 package main import ( "fmt" ) func main() { //定义一 ...

  9. 探索RequestBody报com.alibaba.fastjson.JSONObject cannot be cast to xxx

    今天使用RequestBody接受前端传过来的参数,以前接受字符串数组非常成功,这次把形参改成了List<User>,原本以为顺利接受参数并映射成User的list结构,结果竟然在我取us ...

  10. 【题解】Luogu P2147 [SDOI2008]洞穴勘测

    原题传送门 这题用Link-Cut-Tree解决,Link-Cut-Tree详解 我不太会踩爆Link-Cut-Tree的并查集做法qaq 我们用Link-Cut-Tree维护连通性(十分无脑) Co ...