日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁 > 科技  > 軟件

管理眾多Python版本的神器:Pyenv

來源: 責(zé)編: 時間:2024-01-22 17:26:01 220觀看
導(dǎo)讀譯者 | 布加迪審校 | 重樓想要在不破壞開發(fā)環(huán)境的情況下,在上午嘗試最新Python版本的新特性,在午休時間瀏覽遺留的Python代碼庫嗎?Pyenv可以幫這個忙。使用Pyenv,您可以安裝Python版本,在不同版本之間切換,并刪除不再需要的

譯者 | 布加迪Owa28資訊網(wǎng)——每日最新資訊28at.com

審校 | 重樓Owa28資訊網(wǎng)——每日最新資訊28at.com

Owa28資訊網(wǎng)——每日最新資訊28at.com

想要在不破壞開發(fā)環(huán)境的情況下,在上午嘗試最新Python版本的新特性,在午休時間瀏覽遺留的Python代碼庫嗎Pyenv可以這個忙。使用Pyenv,您可以安裝Python版本,在不同版本之間切換,并刪除不再需要的版本。Owa28資訊網(wǎng)——每日最新資訊28at.com

本教程介紹了Pyenv的安裝和使用Owa28資訊網(wǎng)——每日最新資訊28at.com

安裝Pyenv

第一步是安裝Pyenv。我用的是LinuxUbuntu 23.01。如果您使用Linux系統(tǒng),安裝Pyenv的最簡單方法是運(yùn)行以下curl命令Owa28資訊網(wǎng)——每日最新資訊28at.com

$ curl https://pyenv.run | bash

這將使用pyenv-installer安裝PyenvOwa28資訊網(wǎng)——每日最新資訊28at.com

安裝完成后,系統(tǒng)提示您完成shell環(huán)境的設(shè)置以使用Pyenv。為此,可以將以下命令添加到~/.bashrc文件Owa28資訊網(wǎng)——每日最新資訊28at.com

Owa28資訊網(wǎng)——每日最新資訊28at.com

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrcecho 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrcecho 'eval "$(pyenv init -)"' >> ~/.bashrc

已準(zhǔn)備好開始使用Pyenv!Owa28資訊網(wǎng)——每日最新資訊28at.com

注意如果使用MacWindows系統(tǒng),查看有關(guān)如何安裝Pyenv的詳細(xì)說明https://github.com/pyenv/pyenv#installation。在Windows上,您需要在Windows Subsystem for LinuxWSL)中安裝PyenvOwa28資訊網(wǎng)——每日最新資訊28at.com

使用Pyenv安裝Python版本

已經(jīng)安裝了Pyenv,可以通過運(yùn)行pyenv install命令來安裝特定的Python版本,像這樣Owa28資訊網(wǎng)——每日最新資訊28at.com

Owa28資訊網(wǎng)——每日最新資訊28at.com

$ pyenv install version

執(zhí)行以下命令查看已安裝的Python版本列表Owa28資訊網(wǎng)——每日最新資訊28at.com

$ pyenv versions* system (set by /home/balapriya/.pyenv/version)

還沒有安裝任何新版本,所以Python的唯一版本是系統(tǒng)版本,這里是Python 3.11Owa28資訊網(wǎng)——每日最新資訊28at.com

$ python3 -versionPython 3.11.4

不妨嘗試安裝Python 3.8和3.12。試著運(yùn)行這個命令來安裝Python 3.8Owa28資訊網(wǎng)——每日最新資訊28at.com

$ pyenv install 3.8

第一次嘗試使用Pyenv安裝特定版本的Python時,可能會遇到錯誤,這是由于缺少一些構(gòu)建依賴項。不用擔(dān)心這很容易解決!Owa28資訊網(wǎng)——每日最新資訊28at.com

一些故障排除提示

嘗試使用pyenv install命令在我的Linux發(fā)行版上安裝Pyenv時,由于缺少構(gòu)建依賴項,我遇到了錯誤。Owa28資訊網(wǎng)——每日最新資訊28at.com

這個StackOverflow帖子包含有關(guān)為Pyenv安裝所需構(gòu)建依賴項的有用信息。運(yùn)行以下命令以安裝丟失的依賴項:Owa28資訊網(wǎng)——每日最新資訊28at.com

$ apt-get install build-essential zlib1g-dev libffi-dev libssl-dev libbz2-dev libreadline-dev libsqlite3-dev liblzma-dev

現(xiàn)在,您應(yīng)該能夠安裝Python版本不會出現(xiàn)任何錯誤Owa28資訊網(wǎng)——每日最新資訊28at.com

$ pyenv install 3.8

注意:當(dāng)您安裝Python 3時默認(rèn)安裝最新的版本。但是以指定3.x用于安裝特定的Python版本。還可以運(yùn)行pyenv install --list來列出所有可以安裝的Python版本,不過版本很多Owa28資訊網(wǎng)——每日最新資訊28at.com

同樣,運(yùn)行pyenv install安裝Python 3.12Owa28資訊網(wǎng)——每日最新資訊28at.com

$ pyenv install 3.12

現(xiàn)在如果運(yùn)行pyenv versions,除了系統(tǒng)版本外,還會看到Python 3.8和3.12Owa28資訊網(wǎng)——每日最新資訊28at.com

$ pyenv versions* system (set by /home/balapriya/.pyenv/version)3.8.183.12.0

設(shè)置Python全局版本

使用Pyenv,您可以設(shè)置全局Python版本。顧名思義,全局版本是您在命令行使用Python時所使用的Python版本。Owa28資訊網(wǎng)——每日最新資訊28at.com

但請注意將其設(shè)置為比較新的版本,以免在運(yùn)行使用較新Python版本的項目時出現(xiàn)錯誤。Owa28資訊網(wǎng)——每日最新資訊28at.com

比如說,不妨看看如果將全局版本設(shè)置為Python 3.8.18會發(fā)生什么。Owa28資訊網(wǎng)——每日最新資訊28at.com

$ pyenv global 3.8.18

創(chuàng)建一個項目文件夾。在其中,用以下代碼創(chuàng)建一個main.py文件Owa28資訊網(wǎng)——每日最新資訊28at.com

# main.pydef handle_status_code(status_code): match status_code: case 200: print(f"Success! Status code: {status_code}") case 404: print(f"Not Found! Status code: {status_code}") case 500: print(f"Server Error! Status code: {status_code}") case _: print(f"Unhandled status code: {status_code}")status_code = 404 # oversimplification, yes. handle_status_code(status_code)

所見,這段代碼使用了Python 3.10中引入的match-case語句。因此,需要Python 3.10或更高版本才能成功運(yùn)行此代碼。如果試著運(yùn)行腳本,會得到以下錯誤Owa28資訊網(wǎng)——每日最新資訊28at.com

File "main.py", line 2 match status_code:  ^SyntaxError: invalid syntax

在本文例子中,系統(tǒng)Python是3.11版本,比較新。所以我可以將全局版本設(shè)置為系統(tǒng)Python版本,如下所示Owa28資訊網(wǎng)——每日最新資訊28at.com

$ pyenv global system

當(dāng)現(xiàn)在運(yùn)行同一個腳本時,應(yīng)該得到以下輸出Owa28資訊網(wǎng)——每日最新資訊28at.com

Output >>>Not Found! Status code: 404

如果您的系統(tǒng)Python是舊版本,比如Python 3.6或更早版本,安裝新版的Python并將其設(shè)置為全局版本將大有幫助。Owa28資訊網(wǎng)——每日最新資訊28at.com

為項目設(shè)置本地Python版本

當(dāng)您想要處理使用早期Python版本的項目時,希望安裝該版本以避免任何錯誤(比如不再支持的方法調(diào)用Owa28資訊網(wǎng)——每日最新資訊28at.com

假設(shè)您在處理項目A時使用Python 3.8,處理項目B時使用Python 3.10或更高版本,在這種情況下,可以在項目A的目錄中設(shè)置本地Python版本,如下所示:Owa28資訊網(wǎng)——每日最新資訊28at.com

$ pyenv local 3.8.18

可以運(yùn)行python --version來檢查項目目錄Python版本Owa28資訊網(wǎng)——每日最新資訊28at.com

$ python --versionPython 3.8.18

這在處理較舊的Python代碼庫時特別有用。Owa28資訊網(wǎng)——每日最新資訊28at.com

卸載Python版本

如果不再需要Python版本,可以通過運(yùn)行pyenv uninstall命令卸載它。假設(shè)不再需要Python 3.8.18,那么可以通過運(yùn)行以下命令來卸載它Owa28資訊網(wǎng)——每日最新資訊28at.com

$ pyenv uninstall 3.8.18

您應(yīng)該在終端看到類似的輸出Owa28資訊網(wǎng)——每日最新資訊28at.com

pyenv: remove /home/balapriya/.pyenv/versions/3.8.18? [y|N] ypyenv: 3.8.18 uninstalled

結(jié)語

但愿這篇關(guān)于Pyenv的入門教程對有所幫助。總結(jié)幾個最常見的命令以便快速查詢:Owa28資訊網(wǎng)——每日最新資訊28at.com

命令Owa28資訊網(wǎng)——每日最新資訊28at.com

功能Owa28資訊網(wǎng)——每日最新資訊28at.com

pyenv versionsOwa28資訊網(wǎng)——每日最新資訊28at.com

列出目前已安裝的所有Python版本Owa28資訊網(wǎng)——每日最新資訊28at.com

pyenv install listOwa28資訊網(wǎng)——每日最新資訊28at.com

列出可以安裝的所有Python版本Owa28資訊網(wǎng)——每日最新資訊28at.com

pyenv install 3.xOwa28資訊網(wǎng)——每日最新資訊28at.com

安裝Python 3.x的最新版Owa28資訊網(wǎng)——每日最新資訊28at.com

pyenv install 3.x.yOwa28資訊網(wǎng)——每日最新資訊28at.com

安裝Python 3.x的版本yOwa28資訊網(wǎng)——每日最新資訊28at.com

pyenv global 3.xOwa28資訊網(wǎng)——每日最新資訊28at.com

將Python 3.x設(shè)為全局Python版本Owa28資訊網(wǎng)——每日最新資訊28at.com

pyenv local 3.xOwa28資訊網(wǎng)——每日最新資訊28at.com

將您項目的本地Python版本設(shè)為3.xOwa28資訊網(wǎng)——每日最新資訊28at.com

pyenv uninstall 3.x.yOwa28資訊網(wǎng)——每日最新資訊28at.com

卸載Python 3.x的版本Owa28資訊網(wǎng)——每日最新資訊28at.com

Docker是一個很好的選擇,可以讓本地開發(fā)變得輕松,不用擔(dān)心依賴沖突但是每當(dāng)需要處理新項目使用Docker或其他容器化解決方案可能大材小用Owa28資訊網(wǎng)——每日最新資訊28at.com

因此,我認(rèn)為能夠在命令行中安裝、管理和切換Python版本仍然有幫助。您還可以了解pyenv-virtualenv插件以創(chuàng)建和管理虛擬環(huán)境。Owa28資訊網(wǎng)——每日最新資訊28at.com

原文標(biāo)題:Too Many Python Versions to Manage? Pyenv to the Rescue,作者:Bala Priya COwa28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-66206-0.html管理眾多Python版本的神器:Pyenv

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 牢記這 16 個 SpringBoot 擴(kuò)展接口,寫出更加漂亮的代碼

下一篇: 截止2024年,薪資排名第一,并非 Rust!

標(biāo)簽:
  • 熱門焦點(diǎn)
Top 主站蜘蛛池模板: 鹤峰县| 呼和浩特市| 梅河口市| 洪江市| 泊头市| 新乡县| 绥江县| 互助| 广丰县| 会东县| 休宁县| 筠连县| 贵定县| 永州市| 芜湖市| 道真| 沁水县| 巩留县| 沂源县| 南汇区| 神木县| 霞浦县| 阳泉市| 牡丹江市| 镇江市| 湄潭县| 大方县| 仪陇县| 澄江县| 金湖县| 福建省| 南投市| 琼结县| 卢氏县| 德惠市| 双桥区| 宁武县| 始兴县| 衡山县| 遵义县| 洛南县|