首先需明确:

Mac 电脑上自带有 python
查看默认的 python 版本,打开终端输入命令 python,即可看到如下内容:

我的系统版本OS X 10.13.2,自带的Python版本是2.7.10。
其次:

  • Mac系统自带的python环境在:

    Python 2.7.: /System/Library/Frameworks/Python.framework/Versions/2.7
    其中,解释器在该目录下的 ./bin/python2.
    Python 2.6.: /System/Library/Frameworks/Python.framework/Versions/2.6
    其中,解释器在该目录下的 ./bin/python2.
  • 用户安装的python环境默认环境在:
    Python 3.4.:/Library/Frameworks/Python.framework/Versions/3.4
    其中,解释器在该目录下的 ./bin/python3.
    Python 2.7.:/Library/Frameworks/Python.framework/Versions/2.7
    其中,解释器在该目录下的 ./bin/python2.

注意:一般用户再装一遍 python 环境的时候,在终端的输入 python 命令,默认启动的 python 命令是当前用户安装的 python 版本环境(即:系统默认的 py 启动路径,由原来的 mac 系统默认的解释器变为当前用户安装的 py 解释器)

  • 用户安装Anaconda3后,自带的python环境在:

    Python 3.4.: /Users/steven/Anaconda3 (anaconda在安装时候的自定义路径)
    其中,解释器在该目录下的 ./bin/python3.
  • 用户安装anaconda后,自带的python环境在:
    Python 2.7.:  /Users/Steven/anaconda
    其中,解释器在该目录下的 ./bin/python2.

注意一个小问题(跟本题无关):

在命令行下,直接输入

StevenLiu-MacBookPro:bin steven$ pwd
/Users/steven/Anaconda3/bin #在python3的环境变量下
StevenLiu-MacBookPro:bin steven$ ./python #根据当前路径找解释器
Python 3.4. |Anaconda 2.1. (x86_64)|(default, Sep , ::)
[GCC 4.2. (Apple Inc. build )] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>quit()
StevenLiu-MacBookPro:bin steven$ python#如果没有输入“./”,则进入的是系统当前默认的python环境
Python 2.7. |Anaconda 2.1. (x86_64)|(default, Aug , ::)
[GCC 4.2. (Apple Inc. build )] on darwin
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
# 这里由于设置了anaconda中的python解释器为默认的python,所以不是 /Library/Frameworks/Python.framework/Versions/2.7

其他:

Mac系统自带的python环境默认启动路径在:/usr/bin
用户安装的python环境默认启动路径在:/usr/local/bin
终端输入: “python”命令会执行/usr/local/bin下的“python”——在没有配置文件改变该默认路径的条件下。

最终答案(重点):

Mac在启动,会先加载系统配置文件(包括~/.bash_profile  ),所有默认的命令的路径,将会配配置文件(比如:~/.bash_profile)中的路径覆盖,并且,是后面覆盖前面的路径:例如,在终端输入“python”,系统会在配置文件中的路径查找,一直到找到位置(在配置文件中从后向前找):
例如:当前.bash_profile的内容为:
# Setting PATH for Python 2.7
# The orginal version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH # Setting PATH for Python 3.4
# The orginal version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.4/bin:${PATH}"
export PATH # added by Steven Liu
export PATH="/Users/steven/Anaconda3/bin:$PATH" # added by Anaconda 2.1. installer
export PATH="/Users/steven/anaconda/bin:$PATH" # added by Anaconda3 2.1. installer
export PATH="/Users/steven/Anaconda3/bin:$PATH" # Setting PATH for Subversion 1.9.
export PATH="/opt/subversion/bin:$PATH" #export PATH="/usr/bin:$PATH"

根据该脚本,先会去找 /opt/subversion/bin 中,有没有命名为 “python” 的可执行文件(或是快捷方式),如果没有,则往上找,接着找 /Users/steven/Anaconda3/bin ,发现有,就为当前路径下的解释器环境。—— 所以,想设置python的版本,直接把你想添加的路径export上去,并放在后面。实测有效!

参考:https://www.zhihu.com/question/30941329

mac python 安装参考的更多相关文章

  1. Python【第一篇】python安装、pip基本用法、变量、输入输出、流程控制、循环

    一.python安装 Ubuntu下 系统版本已经同时安装了python2和python3 如果没有python3,可以参考这个貌似是印度阿三的安装视频:http://v.youku.com/v_sh ...

  2. 【mac osx安装opencv,python总结】

    在macosx下安装opencv,最大的困难在于协调python版本.由于在opencv官网上,强烈建议安装完整版的python(不建议使用mac 内置的python),所以会碰到这个多个python ...

  3. Python 环境搭建(Win 安装以及Mac OS 安装)

    千里之行始于足下,今天我们先来学习 Python 环境搭建. 注意:本系列教程基于 Python 3.X Python 环境搭建 Win 安装 打开 Python 官网 https://www.pyt ...

  4. mac下Python安装路径的说明

    Python安装路径的说明 mac在安装Python时, 对不同的安装方式 不同的型号均会安装在不同的文件夹下 安装方式 路径 系统默认(2.7) /System/Library/Frameworks ...

  5. 学习tensorflow之mac上安装tensorflow

    背景 听说谷歌的第二代机器学习的框架tensorflow开源了,我也心血来潮去探探大牛的产品.怎奈安装就折腾了一天,现在整理出来备忘. tensorflow官方网站给出的安装步骤很简单: # Only ...

  6. Python 安装、循环语句、数据类型(一)

    一.关于版本的选择 Should i use Python 2 or Python 3 for my development activity?转载自Python官网 Short version: P ...

  7. Mac下安装pyenv

    mac 用virtualenv安装py3.6的虚拟环境报错(virtualenv -p /usr/bin/python3 env36), 解决的话需要安装zlib包, 然后去掉configure配置里 ...

  8. Mac + PyCharm 安装 Opencv3 + python2.7

    本文地址:http://www.cnblogs.com/QingHuan/p/7354074.html 转载请注明本文地址,方便读者查看本文更新,谢谢! 今天要在Mac上安装OpenCV,过程非常曲折 ...

  9. Python安装及简介

    Python简介 Python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言 ...

随机推荐

  1. 循环 -----JavaScript

    本文摘要:http://www.liaoxuefeng.com/ JavaScript的循环有两种,一种是for循环,通过初始条件.结束条件和递增条件来循环执行语句块: var x = 0; var ...

  2. 3_HA介绍和安装部署

    一.hadoop 2.x产生背景 1.hadoop 1.x中hdfs和mr在高可用和扩展性等方面存在问题.2.hdfs存在的问题:NN单点故障,难以应用于在线场景:NN压力过大,内存受限,影响系统扩展 ...

  3. response.setContentType("text/html;charset=utf-8")后依然乱码的解决方法

    从浏览器获取数据到服务器,服务器将得到数据再显示在浏览器上英文字母正常显示,中文字符乱码的问题,已经使用了 response.setContentType("text/html;charse ...

  4. ABC108C - Triangular Relationship(打表)

    题意 给出$n, k$,求出满足$a+b, b + c, c + a$都是$k$的倍数的三元组$a, b, c$的个数,$1 \leqslant a, b, c \leqslant N$ $n \le ...

  5. git bush的一些基础命令

    git bush的一些基础命令(不区分大小写) 通过命令创建本地仓库 首先自己需要手动建一个文件夹用于本地仓库 进行如下输入,使用cd跳转到刚刚创建的文件夹中 之后再输入 git init 即可创建 ...

  6. Vue钩子函数生命周期实例详解

    vue生命周期简介 Vue实例有一个完整的生命周期,也就是从开始创建.初始化数据.编译模板.挂载Dom.渲染→更新→渲染.卸载等一系列过程,我们称这是Vue的生命周期.通俗说就是Vue实例从创建到销毁 ...

  7. 震惊!几道Python 理论面试题,Python面试题No18

    本面试题题库,由公号:非本科程序员 整理发布 第1题: 简述解释型和编译型编程语言? 解释型语言编写的程序不需要编译,在执行的时候,专门有一个解释器能够将VB语言翻译成机器语言,每个语句都是执行的时候 ...

  8. kubernetes中使用ServiceAccount创建kubectl config 文件

    在kubernetes 为不同的项目创建了不同的SerivceAccount,那么如何通过ServiceAccount创建 kubectl config文件呢?使用下面脚本即可 # your serv ...

  9. A1075 PAT Judge (25)(25 分)

    A1075 PAT Judge (25)(25 分) The ranklist of PAT is generated from the status list, which shows the sc ...

  10. 动态规划:最长上升子序列(二分算法 nlogn)

    解题心得: 1.在数据量比较大的时候n^2会明显超时,所以可以使用nlogn 的算法,此算法少了双重循环,用的lower_bound(二分法). 2.lis中的数字并没有意义,仅仅是找到最小点lis[ ...