怎样在MacOS下安装python3
对于Python开发者来讲,安装多个版本Python非常常见
mac系统自带python,不过mac系统自带的python版本都是2.x版本(Python2.7或者Python2.6为主)。如果你需要用到Python3,由于Python2和Python3有不兼容,所以需要安装不同版本的Python。
特别注意:Python2是系统自带的,很多地方会依赖Python2,所以强烈不建议卸载Python2,以免造成系统各种问题。并且也不建议直接用Python3替换系统的Python2版本,也可能会出现各种系统异常。
基于以上原因,我们想要安装Python3,可以让它与Python2并存。
下面看下mac下如何安装最新版的Python3。
安装xcode命令行工具
在安装之前,应先安装C编译器。最快的方式是运行xcode-select--install来安装Xcode命令行工具
如果不确定是否安装了xcode工具,可以运行
dev@pythontab.com:~$xcode-select--install
xcode-select:error:commandlinetoolsarealreadyinstalled,use"SoftwareUpdate"toinstallupdates
来查看提示,如果安装了,会提示已安装。
安装Homebrew
Homebrew是一款MacOS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。简单的一条指令,就可以实现包管理,而不用你关心各种依赖和文件路径的情况,十分方便快捷。
类似于pip,或者centos的yum
安装Homebrew也非常简单,执行如下命令即可:
dev@pythontab.com:~$/usr/bin/ruby-e"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install)"
安装完成Homebrew后,需将其所在路径插入到PATH环境变量的最前面,即在您所登录用户的~/.profile文件末尾加上这一行:
exportPATH="/usr/local/opt/python/libexec/bin:$PATH"
如果你使用的是OSX10.12(Sierra)或者更旧的系统,请使用如下命令
exportPATH=/usr/local/bin:/usr/local/sbin:$PATH
Python3安装
直接运行命令:
dev@pythontab.com:~$brewinstallpython3
问题解决
执行完毕可能会发现出现如下错误:
Error:Anunexpectederroroccurredduringthebrewlinkstep
Theformulabuilt,butisnotsymlinkedinto/usr/local
Permissiondenied@dir_s_mkdir-/usr/local/Frameworks
Error:Permissiondenied@dir_s_mkdir-/usr/local/Frameworks
大概意思是公式已经建立,但是在创建连接的时候因为没有权限而发生意外错误。在报错信息里我们看到一个目录/usr/local/Frameworks,我们先去找一下这个目录,发现这个目录竟然不存在,那我们就来手动创建一个:
dev@pythontab.com:~$sudomkdir/usr/local/Frameworks
创建好目录之后,再来解决权限问题:
dev@pythontab.com:~$sudochown$(whoami):admin/usr/local/Frameworks
不报错即为修改成功,修改好权限之后,还需要手动执行一下安装时未完成的创建连接:
dev@pythontab.com:~$brewlinkpython3
执行完成发现成功了,自此Python3安装完成,可以直接运行来体验了
dev@pythontab.com:~$python3-V
Python3.7.2
以上内容为大家介绍了怎样在MacOS下安装python3,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。http://www.mobiletrain.org/

猜你喜欢LIKE
相关推荐HOT
更多>>
python函数中使用for循环
python函数中使用for循环1、在for循环中使用函数需要更长的执行时间,因为每次迭代都会调用该函数。2、如果for循环是在函数内部实现的,那么该...详情>>
2023-11-14 13:53:34
python3.1版本的特性有哪些
python3.1中的特性有哪些1、千位数格式化,可以在使用字符串格式化函数时直接完成。在格式化大数时,通常是每三位数放置逗号,使数字更易读(例...详情>>
2023-11-14 13:18:27
python__new__()和__init__()有什么区别?
在python中,__new__()不是一定要有,只有继承自object的类才有,该方法可以return父类(通过super(当前类名,cls).__new__())出来的实例,或者直...详情>>
2023-11-14 12:38:55
pythonwheel是什么
python的第一个主流打包格式是.egg文件,现在大家庭中又有了一个叫做Wheel(*.whl)的新成员。wheel“被设计成包含PEP376兼容安装(一种非常接近于...详情>>
2023-11-14 11:30:39热门推荐
技术干货






