當(dāng)老板把服務(wù)器環(huán)境告訴你,并且告訴你出于安全考慮不能與外網(wǎng)連接,你原來那些能夠自動(dòng)解決依賴問題的手段都不能用了?是不是淚奔崩潰中惕艳?沒有,那么花了一天時(shí)間發(fā)現(xiàn)還沒搞定的時(shí)候是不是崩潰了驹愚?
你以為學(xué)了我上文告訴大家的方法就可以了远搪?so young so naive!!!
并不能!
因?yàn)槟愀緵]搞清楚你的服務(wù)器環(huán)境逢捺,你會(huì)發(fā)現(xiàn)你雖然費(fèi)勁巴拉的手動(dòng)安裝完谁鳍,但并沒有解決報(bào)依賴包不存在的錯(cuò)!
年輕人劫瞳,怪就只怪自己年輕倘潜!
你并沒有查看 你服務(wù)器上有幾個(gè)python版本,你需要按照如下方法操作:
1柠新、查看服務(wù)器安裝版本和路徑窍荧,以及默認(rèn)python路徑辉巡。
# whereis python
>python: /usr/bin/python3.5m /usr/bin/python2.7 /usr/bin/python3.5-config /usr/bin/python2.7-config /usr/bin/python3.5m-config /usr/bin/python3.5 /usr/bin/python /usr/lib/python2.7 /usr/lib/python3.5 /etc/python2.7 /etc/python3.5 /etc/python /usr/local/lib/python2.7 /usr/local/lib/python3.5 /usr/include/python3.5m /usr/include/python2.7 /usr/include/python3.5 /usr/share/python /home/lst001/anaconda3/bin/python3.6 /home/lst001/anaconda3/bin/python3.6-config /home/lst001/anaconda3/bin/python /home/lst001/anaconda3/bin/python3.6m /home/lst001/anaconda3/bin/python3.6m-config /usr/share/man/man1/python.1.gz
瞧恨憎,我有三個(gè)版本,預(yù)裝的2.7 3.5以及我自己裝的anaconda3 里面帶的3.6.再看一下默認(rèn)版本:
lst001@lst001:~$ python
Python 3.6.5 |Anaconda, Inc.| (default, Apr 29 2018, 16:14:56)
lst001@lst001:~$ python2
Python 2.7.12 (default, Dec? 4 2017, 14:50:18)
lst001@lst001:~$ python3
Python 3.6.5 |Anaconda, Inc.| (default, Apr 29 2018, 16:14:56)
你以為這樣完了郊楣,并沒有憔恳,你會(huì)發(fā)現(xiàn)隨后通過pip安裝的包,在python里使用import命令提示找不到module净蚤,排查后發(fā)現(xiàn)pip安裝在了默認(rèn)的python 2.7的文件夾下钥组。
這是由于sudo命令下python的尋址結(jié)果依然為python 2.7,因此在pip安裝文件夾下今瀑,通過sudo命令sudo python setup.py install安裝pip程梦,會(huì)默認(rèn)安裝至python2.7的文件夾下。
你需要知道sudo python 以及pip pip3 和sudo pip 都指向哪里橘荠。所以 依次驗(yàn)證
sudo python?
sudo python2
sudo python3
pip -V
pip3 -V
sudo pip -V?
sudo pip3 -V
發(fā)現(xiàn)都不一樣屿附,怎么解決?使用update-alternatives
方法:
jennifer@jennifer-pc:~$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 20
[sudo] jennifer 的密碼:
update-alternatives: 使用 /usr/bin/python2.7 來在自動(dòng)模式中提供 /usr/bin/python (python)
jennifer@jennifer-pc:~$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 50
update-alternatives: 使用 /usr/bin/python3.5 來在自動(dòng)模式中提供 /usr/bin/python (python)
jennifer@jennifer-pc:~$ sudo update-alternatives --config python
[sudo] jennifer 的密碼:
有 2 個(gè)候選項(xiàng)可用于替換 python (提供 /usr/bin/python)哥童。
選擇? ? ? 路徑? ? ? ? ? ? ? 優(yōu)先級(jí)? 狀態(tài)
------------------------------------------------------------
* 0? ? ? ? ? ? /usr/bin/python3.5? 50? ? ? ? 自動(dòng)模式
1? ? ? ? ? ? /usr/bin/python2.7? 20? ? ? ? 手動(dòng)模式
2? ? ? ? ? ? /usr/bin/python3.5? 50? ? ? ? 手動(dòng)模式
要維持當(dāng)前值[*]請(qǐng)按<回車鍵>挺份,或者鍵入選擇的編號(hào):
查看python本版,已經(jīng)成功切換到3.5
jennifer@jennifer-pc:~$ python --version
Python 3.5.2 :: Anaconda 4.2.0 (64-bit)
jennifer@jennifer-pc:~$ sudo python
Python 3.5.2 (default, Nov 23 2017, 16:37:01)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
參考文章鏈接:https://blog.csdn.net/JasonDing1354/article/details/50470109