1.安裝python
官方鏈接
安裝完成后,打開IDLE 顯示Tcl/Tk不穩(wěn)定,提示連接https://www.python.org/download/mac/tcltk/#activetcl-8-5-18-0 根據(jù)我電腦的型號(hào),我選擇了ActiveTcl 8.5.18.0
2.使用pip安裝套件 安裝時(shí)都需要加管理員權(quán)限
sudo -H pip install requests
sudo -H pip install BeautifulSoup4
sudo -H pip install jupyter
jupyter notebook //打開視窗
3.如何安裝pip
使用pip命令時(shí),發(fā)現(xiàn)系統(tǒng)中沒有pip命令,于是到官方下載
然后用python運(yùn)行就好了,在終端鍵入 python 文件
4.安裝jupyter報(bào)錯(cuò),出現(xiàn)操作不被允許
Operation not permitted: '/tmp/pip-RzvVTs-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/dateutil'")]
原因是:由于El Capitan及之后引入了SIP機(jī)制(System Integrity Protection),默認(rèn)下系統(tǒng)啟用SIP系統(tǒng)完整性保護(hù)機(jī)制,無論是對(duì)于硬盤還是運(yùn)行時(shí)的進(jìn)程限制對(duì)系統(tǒng)目錄的寫操作。
有兩種方案可以解決這個(gè)問題:
方案1:取消SIP機(jī)制
重啟電腦,按住Command+R(直到出現(xiàn)蘋果標(biāo)志)進(jìn)入Recovery Mode(恢復(fù)模式)
左上角菜單里找到實(shí)用工具 -> 終端
輸入csrutil disable回車
reboot重啟Mac即可
如果想重新啟動(dòng)SIP機(jī)制重復(fù)上述步驟改用csrutil enable即可
方案2:基于用戶的權(quán)限來安裝模塊包顯得更加合理。
sudo -H pip install jupyter --user -U
我選擇了第二個(gè)方案,是不報(bào)錯(cuò)了。但是jupyter依然沒安裝成功,感覺問題出在了安裝時(shí)尋找的是系統(tǒng)的2.7版本,而不是我安裝的3.6版本。
我嘗試使用 sudo ln -s /usr/local/bin/python3 /usr/bin/python 命令創(chuàng)建連接,使我在終端輸入python時(shí)可以顯示最新的版本,但是依然報(bào)權(quán)限錯(cuò)誤,即使我后面加了--usre -U
5.只使用最新版python
實(shí)在沒辦法,我最終采用了放棄使用原有的python2.7,只保留了最新版的
先把它這個(gè)文件夾(/usr/bin/python)刪掉(找不到可以不刪),因?yàn)槲覀兙褪且刈鲞@個(gè)鏈接文件。
如何知道python路徑呢,我們可以使用which python 來顯示python的路徑,事實(shí)上此命令還可以查其他東西的路徑。
/usr/bin/python(有人說不建議重做這個(gè)鏈接,但是既然選擇一個(gè)python環(huán)境來用,就只用一個(gè)即可,把主要的python設(shè)置到這里,以絕后患。我也試過直接加alias到環(huán)境變量,但是沒用,所以干脆從根本解決問題。)
由于蘋果安全策略,root用戶也無法更改/usr/bin目錄,所以要先禁用rootless功能,跟上述第一個(gè)方案一樣。
于是需要重啟,按住command+R,在頂部菜單選終端csrutil disablereboot重啟后
就可以更改/usr/bin目錄了。
sudo rm /usr/bin/python
sudo ln -s /usr/local/bin/python3 /usr/bin/python
第二句是創(chuàng)建一個(gè)鏈接,鏈接到你要的位置。
然后在終端打python就顯示為新安裝的版本了。
6.jupyter安全機(jī)制提升
這次最后順利安裝了 jupyter 但是執(zhí)行jupyter notebook 卻報(bào)以下錯(cuò)誤:
execution error: “"http://localhost:8888/tree?token=dca583b0c33ef395d3c778e015dc75a656d1c3db8293e0fd"”不理解“open location”信息。 (-1708)
這其實(shí)也不是一個(gè)錯(cuò)誤原因是jupyter近期更新了安全機(jī)制,默認(rèn)需要輸入密碼才能使用;
瀏覽器無法自行開啟,參考
由于我的系統(tǒng)是10.12.5的,根據(jù)提示,我把帶有token的那段復(fù)制粘貼到瀏覽器打開便可以打開使用。根據(jù)上述參考,我創(chuàng)建了配置文件,默認(rèn)用Safari打開。
但我想默認(rèn)用Google打開,于是我參考連接將Safari改為Chorme,最終的結(jié)果是我們的chorme可以打開,并非是在隱身模式下啟用的。也就是說我的電腦可以正常使用。