自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Ubuntu 20.04 設(shè)置 Python 項(xiàng)目環(huán)境的正確姿勢(shì)

系統(tǒng) Linux
今天,我們將學(xué)習(xí)在 Ubuntu 20.04 下為你的 Python 項(xiàng)目設(shè)置環(huán)境的眾多方法之一。

 [[423546]]

今天,我們將學(xué)習(xí)在 Ubuntu 20.04 下為你的 Python 項(xiàng)目設(shè)置環(huán)境的眾多方法之一。

原因

我最近參與了一項(xiàng)技術(shù)測(cè)試,該測(cè)試是 Python Jr 開發(fā)工作選擇過程的一部分。測(cè)試附帶問題描述、預(yù)期解決方案、部署指南和初始框架。在那個(gè)框架中出現(xiàn)了一個(gè)Pipfile安裝了一些庫(kù)并定義了 Python 版本的框架。這就是問題所在:Ubuntu 20.04 中的 Python 版本是3.8,項(xiàng)目要求使用3.9版本 ,然后我想:好吧,那就讓我們安裝 Python 3.9!但事情沒那么簡(jiǎn)單……

我遇到了以下問題:

  •  安裝新版本不會(huì)使其成為系統(tǒng)默認(rèn)值
  •  此后,pip, pipenv沒有按照我想要的Python版本進(jìn)行適當(dāng)?shù)呐渲谩?/li>

現(xiàn)在,我將向您展示我的詳細(xì)分步解決方案。

安裝新的 Python 版本

為了安裝 Python 3.9 版,我最終使用了存儲(chǔ)庫(kù),而不是通過編譯源代碼來進(jìn)行安裝。

添加存儲(chǔ)庫(kù): 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo add-apt-repository ppa:deadsnakes/ppa 

更新軟件包列表: 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt update 

安裝軟件包: 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install python3.9 

可選(實(shí)際上,我建議您這樣做),你可以將 Python 3.9 添加到系統(tǒng) PATH: 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo nano /etc/profile.d/python.sh 

并添加:

PATH=/opt/python/3.9/bin/:$PATH

這將允許用戶在終端中運(yùn)行 pip 命令以在主目錄中安裝軟件包。

將新版本設(shè)置為默認(rèn)版本

檢查是否有不同版本的Python的替代方案: 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo update-alternatives --list python 

如果它不存在,則會(huì)出現(xiàn)以下消息:

update-alternatives: 錯(cuò)誤: 無 python 的候選項(xiàng)

然后執(zhí)行: 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 1 

輸出: 

  1. update-alternatives: 使用 /usr/bin/python3.8 來在自動(dòng)模式中提供 /usr/bin/python (python)  
  2. linuxmi@linuxmi:~/www.linuxmi.com$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.9 2 

輸出: 

  1. update-alternatives: 使用 /usr/bin/python3.9 來在自動(dòng)模式中提供 /usr/bin/python (python) 

之后,你運(yùn)行以下命令: 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo update-alternatives --config python 

然后你會(huì)看到如下輸出: 

  1. 有 2 個(gè)候選項(xiàng)可用于替換 python (提供 /usr/bin/python)。  
  2.   選擇       路徑              優(yōu)先級(jí)  狀態(tài)  
  3. ------------------------------------------------------------  
  4. * 0            /usr/bin/python3.9   2         自動(dòng)模式  
  5.   1            /usr/bin/python3.8   1         手動(dòng)模式  
  6.   2            /usr/bin/python3.9   2         手動(dòng)模式 

要維持當(dāng)前值[*]請(qǐng)按<回車鍵>,或者鍵入選擇的編號(hào):

在上面的示例中,我最終選擇了數(shù)字 2,因?yàn)樗俏蚁M麖默F(xiàn)在開始成為默認(rèn)版本的 Python 版本。

完成后,檢查下 Python 版本 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ python --version 

輸出:

Python 3.9.7

此時(shí),我們已經(jīng)正確安裝了所需的 Python 版本,并且是系統(tǒng)的默認(rèn)版本。

pip 和 pipenv 的問題

即使您將另一個(gè)版本的 Python 設(shè)置為默認(rèn)值,安裝 pip 和 pipenv 最終也會(huì)轉(zhuǎn)到 Python 3.8 PATH。因此,為了安裝指向 Python 3.9 的 pip,我最終正常安裝了 pip,然后按如下方式更新了 pip: 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ curl https://bootstrap.pypa.io/get-pip.py -o get-piy.py 

進(jìn)而運(yùn)行: 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ python3.9 get-pip.py 

輸出如下: 

  1. Defaulting to user installation because normal site-packages is not writeable  
  2. Collecting pip  
  3. Downloading pip-21.2.4-py3-none-any.whl (1.6 MB)  
  4. |████████████████████████████████| 1.6 MB 5.0 kB/s  
  5. Installing collected packages: pip  
  6. Successfully installed pip-21.2.4 

如果有權(quán)限問題,可以使用 sudo 或使用 --user 標(biāo)志運(yùn)行命令: 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo python3.9 get-pip.py  
  2. linuxmi@linuxmi:~/www.linuxmi.com$ python3.9 get-pip.py --user 

之后,確保 pip 綁定到 Python 3.9 版: 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ pip --version 

預(yù)期的輸出應(yīng)該是這樣的: 

  1. pip 21.2.4 from /home/linuxmi/.local/lib/python3.9/site-packages/pip (python 3.9) 

正如我之前提到的,我需要安裝 Pipfile 依賴項(xiàng),所以我需要 pipenv。我這里是運(yùn)行 pip install pipenv,pipenv 還沒有鏈接到舊版本。如果發(fā)生這種情況,請(qǐng)運(yùn)行: 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo pip install pipenv 

并且該軟件包將安裝在 3.9 版本中。

總結(jié)

如果你到此為止并解決了問題,那么恭喜!功勞不屬于我而歸于你尋求解決方案!如果沒有,請(qǐng)告訴我們問題是什么,以便我們可以幫助你。感謝閱讀,更多資訊及教程請(qǐng)關(guān)注Linux迷(www.linuxmi.com)。 

 

責(zé)任編輯:龐桂玉 來源: Linux公社
相關(guān)推薦

2021-09-28 14:15:23

Ubuntu 20.0LinuxSSH

2021-09-18 08:00:00

Python系統(tǒng)開發(fā)

2017-02-23 15:37:44

OptionObject容器

2016-05-09 10:41:03

算法分析開發(fā)

2018-01-11 15:31:39

命令Linux關(guān)機(jī)

2020-02-24 15:26:40

Python短信免費(fèi)

2023-01-06 08:24:00

PandasPython

2017-07-10 13:09:45

前端Flexbox

2017-03-16 11:39:33

Openstack源碼姿勢(shì)

2023-01-30 07:41:43

2020-03-06 16:50:08

Java錯(cuò)誤日志

2020-11-24 10:40:12

Ubuntu 20.0LinuxVue

2021-12-15 11:46:46

HTTP2Nginx

2020-11-12 11:44:42

ubuntu

2021-04-20 22:27:22

Python軟件包GitHub

2017-08-28 14:28:44

Python文檔編程正確姿勢(shì)

2018-04-11 15:42:04

開源項(xiàng)目姿勢(shì)

2016-12-12 08:48:24

2019-12-27 15:58:57

大數(shù)據(jù)IT互聯(lián)網(wǎng)

2021-09-15 16:20:02

Spring BootFilterJava
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)