Ubuntu16.04 安裝多個(gè)python版本的問(wèn)題及解決方法
Ubuntu16.04自帶python2.7與python3.5,某個(gè)項(xiàng)目編譯卻要求python版本大于等于3.7,遂考慮在原系統(tǒng)基礎(chǔ)上再安裝python3.8。
1 下載安裝python3.8
Ubuntu 官方 apt 庫(kù)中還未收錄 python 3.8,因此添加 deadsnakes PPA 源安裝python3.8,否則會(huì)出現(xiàn)以下錯(cuò)誤
錯(cuò)誤1
:
E: 無(wú)法定位軟件包 python3.8
E: 無(wú)法按照 glob ‘python3.8' 找到任何軟件包
E: 無(wú)法按照正則表達(dá)式 python3.8 找到任何軟件包
解決方法:運(yùn)行以下指令安裝python3.8
sudo add-apt-repository ppa:deadsnakes/ppa sudo apt-get update sudo apt-get install python3.8
此時(shí)python3版本還是指向python3.5,可以輸入
cd /usr/bin && ll
查看
2 修改python3默認(rèn)指向
sudo rm python3 sudo ln -s python3.8 python3
查看python版本驗(yàn)證修改成功:
$ python3 --version python3.8.9
3 無(wú)法打開(kāi)終端解決方案
按1、2步驟安裝完python3后,一般無(wú)法打開(kāi)終端錯(cuò)誤2
:
$ gnome-terminal
Traceback (most recent call last):
File "/usr/bin/gnome-terminal", line 9, in <module>
from gi.repository import GLib, Gio
File "/usr/lib/python3/dist-packages/gi/__init__.py", line 42, in <module>
from . import _gi
ImportError: cannot import name '_gi'
解決方法:
cd /usr/lib/python3/dist-packages/gi/ # 下面的35 改成38 表示從py3.5改到py3.8 sudo mv _gi_cairo.cpython-35m-x86_64-linux-gnu.so _gi_cairo.cpython-38m-x86_64-linux-gnu.so sudo mv _gi.cpython-35m-x86_64-linux-gnu.so _gi.cpython-38m-x86_64-linux-gnu.so
接下來(lái)修改
sudo gedit /usr/bin/gnome-terminal
將python3改為python
問(wèn)題解決。
4python版本的卸載
sudo apt remove python3.8 sudo apt autoremove python3.8
5 python多版本管理
參考https://www.jb51.net/article/221437.htm,值得注意,僅按該博文的方式配置仍會(huì)打不開(kāi)終端,建議先按照本文方式配置后再添加管理。
將 python 各版本添加到 update-alternatives
$ which python3.8 /usr/bin/python3.8 $ sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1 $ which python3.5 /usr/bin/python3.5 $ sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 2
通過(guò)下面配置切換版本
$ sudo update-alternatives --config python3 There are 2 choices for the alternative python3 (providing /usr/bin/python3). Selection Path PriorityStatus ------------------------------------------------------------ * 0/usr/bin/python3.52auto mode 1/usr/bin/python3.52manual mode 2/usr/bin/python3.81manual mode Press <enter> to keep the current choice[*], or type selection number: 2
6升級(jí)pip3/pip
對(duì)于初次安裝python的Ubuntu系統(tǒng)而言,pip等級(jí)較低,這種情況下進(jìn)行pip install高版本庫(kù)可能會(huì)出現(xiàn)一系列的問(wèn)題,例如:
錯(cuò)誤3
:AttributeError: module ‘platform' has no attribute ‘linux_distribution'
解決方法:對(duì)pip版本進(jìn)行升級(jí)
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py sudo python3 get-pip.py --force-reinstall
到此這篇關(guān)于Ubuntu16.04 安裝多個(gè)python版本的文章就介紹到這了,更多相關(guān)Ubuntu16.04 安裝python內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。