Mac切换Python版本
写在前面:
最近在学习Python基础,教学视频里的Python环境是python3。Mac自带的python版本是2.7,于是我需要切换python版本到3.0。看了许多帖子后略懵,最终在这篇文章里解决了版本切换的问题。
首先去官网下载最新版Python
https://www.python.org/downloads/mac-osx/
安装完新版本的python之后,他们的安装位置:
1.Mac系统自带的python环境在:
Python 2.7:
/System/Library/Frameworks/Python.framework/Versions/2.7/
其中,解释器在该目录下的 ./bin/python2.72.用户安装的python环境默认在:
Python 3.6.1:/Library/Frameworks/Python.framework/Versions/3.6/
其中,解释器在该目录下的 ./bin/python3.63.用户安装 Anaconda3 后,自带的python环境在:
Python 3.4.1:/Users/steven/Anaconda3
其中,解释器在该目录下的./bin/python3.4
关于Anaconda3,anaconda我理解为类似iOS开发常用的cocoapods,这不是本文的重点,可以先跳过。
那么在安装完新版本之后,切换默认的python为新版本的做法:
mac在启动时,会先加载系统配置文件(包括/.bash_profile),所有默认的命令路径,将会被配置文件(比如:/.bash_profile)中的路径覆盖,并且,是从文件从下往上的顺序覆盖(最后的覆盖前面的)。
方法一: 不输入python,直接输入python3,即使用的是python的加载文件。
缺点:每次使用都要输入python3,烦。
方法二(我用的这个,好使): 修改用户根目录下的~/.bash_profile文件,在终端输入:
open ~/.bash_profile
在文件中新增一行:
// 具体版本根据你/Library/Frameworks/Python.framework/Versions这个路径下最新版本自选
// 我的版本是3.7
alias python="/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7"
添加完之后执行
source ~/.bash_profile
验证:
ZahiLins-MacMini:~ linzehua$ python --version
Python 3.7.0
方法三(未实践): 修改~/.bashrc 来达到目的
open ~/.bashrc
在文件中添加
alias python="python3"
这句话的意思就是 让python命令与phthon3等价,所以你每次在shell中输入python也就相当于输入了phthon3了
注:使用方法3的时候发现并未生效,查资料显示Mac下要加载bashrc的方法是
【Mac切换Python版本】~/.bashrc里面的一些设置,比如alias命令的设置“不起作用”,新开一个终端都要source一下才起作用。
unix下当shell是login shell,.bash_profile才会加载,而bashrc正好相反。
真正的区别是在Linux下,当用户登录到一个图形界面,然后打开一个终端terminal,那些shell是non-login shell。
然而,在OS X登录的时候,并没有运行着一个shell,所以,在运行Terminal.app的时候,其实那是一个login shell。
后来新建了 .bash_profile加载一次.bashrc就ok啦
if [ "${BASH-no}" != "no" ];
then
[ -r ~/.bashrc ] && . ~/.bashrc
fi
推荐阅读
- Mac安装Chromedriver
- python学习之|python学习之 实现QQ自动发送消息
- 逻辑回归的理解与python示例
- MAC安装Mongo
- python自定义封装带颜色的logging模块
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- 如何在Mac中的文件选择框中打开系统隐藏文件夹
- Python基础|Python基础 - 练习1
- 【Hadoop踩雷】Mac下安装Hadoop3以及Java版本问题
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)