1. 程式人生 > >Mac 下升級python 2.7 到python 3.6

Mac 下升級python 2.7 到python 3.6

一、前言

mac 系統自帶python 2.7本文目的將python 2.7升級到python 3.6

網上有部分文章建議,兩個版本共存,博主並不知道版本共存好用,還是升級之後好用,所以讀者們慎選

二、去官網下載最新的安裝包

官網 選擇最新的版本下載,會有Mac OSC 和Windows兩個檔案列表,選擇一個下載

我選的是3.6.5 Mac OSC 64 安裝包  

三、安裝下載下來的安裝包

安裝後的檔案目錄      

/Library/Frameworks/Python.framework/Versions/3.6

四、移動安裝的python檔案

開啟終端

sudo mv /Library/Frameworks/Python.framework/Versions/3.6 /System/Library/Frameworks/Python.framework/Versions

五、關閉rootless機制

由於Mac下的python2.7 預設是安裝在/System目錄下的。但是~~~Mac有個Rootless機制,預設不允許直接在/System下作修改。所以要先關閉Rootless機制。

關閉Rootless機制的方法: 
關閉: 
1).重啟電腦, 重啟過程中按住command+R, 進入恢復模式 
2).開啟terminal,鍵入: csrutil disable 
3).重啟電腦


如果之後要再開啟Rootless機制,方法如下: 
開啟: 
1).重啟電腦, 重啟過程中按住command+R, 進入恢復模式 
2).開啟terminal,鍵入: csrutil enable 
3).重啟電腦

六、改變python安裝目錄的使用者組

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

七、修改python安裝目錄的一些快捷方式

在 /System/Library/Frameworks/Python.framework/Versions/

目錄下有一個Current,這是一個目錄符號連結,指向當前的Python版本。原來指向2.7的,現在指向我們安裝的最新的。所以應先刪除Current,然後重新建立Current符號連結,命令如下:

刪除連線:sudo rm /System/Library/Frameworks/Python.framework/Versions/Current
建立連線:sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.6 /System/Library/Frameworks/Python.framework/Versions/Current

八、刪除舊的目錄符號連結

/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

九、重新建立新的目錄符號連線

將上面刪除的連線重新建立,指向 python 3.6

sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.6/bin/pydoc3.6 /usr/bin/pydoc
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6 /usr/bin/python
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.6/bin/pythonw3.6 /usr/bin/pythonw
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6m-config /usr/bin/python-config

十、更新/root/.bash_profile檔案中的路徑

在終端輸入

vim ~/.bash_profile

在.bash_profile中插入下面內容

# Setting PATH for Python 3.6
# The orginal version is saved in .bash_profile.pysave
PATH="/System/Library/Frameworks/Python.framework/Versions/3.6/bin:${PATH}"
export PATH

重啟console,即可看到python的版本已經修改