簡體   English   中英

如何在沒有 --update-alternatives 的情況下設置默認 Python 版本

[英]How to set default Python version without --update-alternatives

我在 Ubuntu 18.04 上安裝了 Python3.6 和 Python3.8。 當我執行 python3 -VI 時得到 python3.8.0,這是正確的。 這是目前我的默認 Python。

我在安裝 Python3.6 和 Python3.8 時使用了 Ubuntu 18.04 軟件包存儲庫。 我剛剛從源代碼構建了 Python3.10,現在我想將其設置為默認值。 更改的規范方法是使用 --update-alternatives,但是我在安裝 Python3.6 和 Python3.8 時沒有這樣做,所以當我執行時:

update-alternatives --query python
update-alternatives: error: no alternatives for python

Python3.8 在 /usr/bin/python3.8 中,Python3.10 在 /usr/local/bin/python3.10 中。

根據我在網上閱讀的內容,我應該這樣做:

$ sudo update-alternatives --install /usr/local/bin/python python /usr/bin/python3.8
$ sudo update-alternatives --install /usr/local/bin/python python /usr/local/bin/python3.10  

然后我使用 sudo update-alternatives --config python 選擇默認值。

因為我目前沒有任何替代方案,但我以某種方式能夠從 Python3.6 切換到 Python3.8(我不記得是如何切換的),上面的命令會導致任何問題嗎? 3.8 (/usr/bin/) 和 3.10 (/usr/local/bin/) 的不同位置是否存在問題,3.10 的符號鏈接進入 /usr/local/bin/ 的位置會產生什么影響已經定位。

當然,我可以嘗試一下,但是如果出現問題,我不確定如果出現問題如何退出。 我在網上得到了很多不同的信息。

謝謝你的幫助。

我已經回答了我自己的問題。 首先,我確實有替代方案,但由於 Ubuntu 默認使用 Python2(請 Ubuntu 改變這一點——世界已經向前發展),命令是 sudo update-alternatives --config python3:

$ sudo update-alternatives --config python3
There are 2 choices for the alternative python3 (providing /usr/bin/python3).

  Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /usr/bin/python3.8   2         auto mode
  1            /usr/bin/python3.6   1         manual mode
  2            /usr/bin/python3.8   2         manual mode

請注意“提供 /usr/bin/python3”這一行。 這意味着 Python 3 的 Python 符號鏈接位於 /usr/bin/python3 中。 所以我添加了新的:

sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.10 3

這使得 Python 3.10 優先級為 3,即最高優先級。 然后:

$ python3 --version
Python 3.10.0   

我希望這對將來的人有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM