python版本控制和環(huán)境管理過程
網(wǎng)上有很多教程都是教導(dǎo)小白去官方下載之后編譯安裝。但是,小白連cmake是什么都不知道,這種教導(dǎo)方式實(shí)在是誤人子弟。這里我介紹了一種十分簡(jiǎn)潔的更新方法。
1.查看目前python的版本
python --version
應(yīng)該有類似如下的輸出:
Python 3.9.18
2.添加軟件源并更新
sudo add-apt-repository ppa:deadsnakes/ppa sudo apt update
這兩個(gè)指令可以賦予我們下載更高版本python的能力
3.選擇你想要下載的版本
譬如,我想要下載python3.9:
sudo apt install python3.9
另外,python3.10比python3.9更新,因?yàn)?0比9大。
4.警示:沒必要設(shè)置默認(rèn)版本
為什么我們?cè)诿钚休斎?code>python --version就可以查看版本呢?這是因?yàn)樵?code>/usr/bin/目錄下存在名為python的軟鏈接,軟鏈接其實(shí)就是鏈接對(duì)象的快捷方式。
Ubuntu22.04的默認(rèn)python版本是3.10,輸入以下指令查看目前的軟鏈接方式:
ls -l /usr/bin/python*
應(yīng)該有類似如下的輸出:
lrwxrwxrwx 1 root root 18 1月 20 14:52 /usr/bin/python -> python3.10 lrwxrwxrwx 1 root root 10 8月 18 2022 /usr/bin/python3 -> python3.10 -rwxr-xr-x 1 root root 5904904 11月 20 23:14 /usr/bin/python3.10 -rwxr-xr-x 1 root root 5294896 8月 25 21:20 /usr/bin/python3.9
可以看到,目前在/usr/bin/目錄下有兩個(gè)軟鏈接:python和python3。這兩個(gè)軟鏈接都指向了Ubuntu22.04默認(rèn)的python3.10。
此外,我們也看到了我們剛剛安裝的python3.9。
誤區(qū)
網(wǎng)上有些錯(cuò)誤的教程指示我們重建軟鏈接,把它指向python3.9,這是沒什么用的。如下面這行指令:
sudo ln -snf /usr/bin/python3.9 /usr/bin/python
稍微解釋一下:-snf表示修改軟鏈接,第一個(gè)參數(shù)是源文件,第二個(gè)參數(shù)是生成的快捷方式的位置。
這樣做,只能使終端中的默認(rèn)的python版本改為python3.9:
han@han-ASUS-TUF-Gaming-F15-FX507ZR:~$ python --version Python 3.9.18
但是,我們后續(xù)使用sudo apt install python3-pip安裝pip之后,pip下載的包默認(rèn)還是給python3.10的!
千萬千萬不要覆蓋python3軟鏈接
如果你把指令錯(cuò)誤輸入成:
sudo ln -snf /usr/bin/python3.9 /usr/bin/python3
由于你覆蓋了python3這個(gè)軟鏈接的目標(biāo)python3.10,而你的系統(tǒng)有很多是基于python3.10的,你的終端就打不開了!?。?/strong>
解決辦法
如果你有IDE的話,還可以打開IDE的終端,然后恢復(fù)python3軟鏈接的目標(biāo):
sudo ln -snf /usr/bin/python3.10 /usr/bin/python3

5.pip軟件包管理
最省心
sudo apt install python3-pip
這樣做的話,以后pip默認(rèn)安裝的包是給python3.10的。當(dāng)然,如果我們想要給我們自己的python3.9安裝軟件包的話,就需要多一點(diǎn)字?jǐn)?shù):
python3.9 -m pip install <name of package>
稍微麻煩
如果想要以后pip下載的包默認(rèn)給我們自己的python3.9使用,需要:在pycharm這款I(lǐng)DE里面選擇了之后,直接點(diǎn)擊安裝pip,如下圖:

然后在終端中查看pip版本,可以看到綁定了我們想要的python版本,這樣以后pip安裝的包也屬于python3.9了:
han@han-ASUS-TUF-Gaming-F15-FX507ZR:~$ pip --version pip 20.3.4 from /usr/local/lib/python3.9/dist-packages/pip (python 3.9)
換源
切換pip下載源為國(guó)內(nèi)源,提高下載速度:
han@han-ASUS-TUF-Gaming-F15-FX507ZR:~$ pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple Writing to /home/han/.config/pip/pip.conf
顯示自動(dòng)寫入了路徑/home/han/.config/pip/pip.conf。當(dāng)然也可以手動(dòng)創(chuàng)建這個(gè)文件然后更改。
6.總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
教你用Python實(shí)現(xiàn)Excel表格處理
今天教各位小伙伴怎么用Python處理excel,文中有非常詳細(xì)的代碼示例及相關(guān)知識(shí)總結(jié),對(duì)正在學(xué)習(xí)python的小伙伴們很有幫助,需要的朋友可以參考下2021-05-05
新手常犯的10個(gè)Python錯(cuò)誤及解決方法總結(jié)
在學(xué)習(xí) Python 的過程中,新手開發(fā)者經(jīng)常會(huì)遇到一些常見的錯(cuò)誤,今天,就讓我們一起看看這些常見錯(cuò)誤及其解決方法,幫助你更快地掌握 Python 編程2025-10-10
通過實(shí)例解析Python return運(yùn)行原理
這篇文章主要介紹了通過實(shí)例解析Python return運(yùn)行原理,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03
Python優(yōu)雅實(shí)現(xiàn)二分查找的示例詳解
二分查找是一種高效的搜索算法,用于在有序數(shù)組中查找特定元素,本文將介紹二分查找的基本原理,并通過Python代碼進(jìn)行詳細(xì)講解,需要的可以參考一下2023-07-07
python 遍歷列表提取下標(biāo)和值的實(shí)例
今天小編就為大家分享一篇python 遍歷列表提取下標(biāo)和值的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-12-12
Python函數(shù)默認(rèn)參數(shù)設(shè)置的具體方法
本文主要介紹了Python函數(shù)默認(rèn)參數(shù)設(shè)置,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03
Pandas設(shè)置數(shù)據(jù)顯示格式實(shí)現(xiàn)方式
這篇文章主要介紹了Pandas設(shè)置數(shù)據(jù)顯示格式實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-10-10
Python模塊導(dǎo)入的幾種方法實(shí)現(xiàn)
本文主要介紹了Python模塊導(dǎo)入的幾種方法實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-12-12

