<blockquote id="ue9b1"></blockquote>
    
    

    <style id="ue9b1"></style>
      <sub id="ue9b1"><p id="ue9b1"><form id="ue9b1"></form></p></sub>

      <strong id="ue9b1"><button id="ue9b1"><mark id="ue9b1"></mark></button></strong>
      成年午夜性影院,下面一进一出好爽视频,国产无遮挡又黄又爽又色,国产精品爽爽v在线观看无码,国产人妻久久精品一区二区三区,国产伦精品一区二区三区免费迷,国产欧美精品一区二区三区,日韩精品一区二区三区视频
      網易首頁 > 網易號 > 正文 申請入駐

      十年來Python生態最好工具,引爆全社區的uv到底是什么?

      0
      分享至



      機器之心報道

      編輯:Panda

      uv,我們也該報道一下它了。

      這個用 Rust 寫的 Python 包和項目管理工具近日在 Hacker News 上再次引發廣泛關注。原因很簡單,來自英國的天文學家和科學傳播者 Emily L. Hunt 博士在自己的博客上發布了一篇文章,稱「uv 是近十年來 Python 生態系統發生的最好的事情」。

      博客不長,但被分享到 Hacker News 后卻引發了廣泛共鳴和討論,也收獲了上千點贊(雖然很多討論的焦點是 Rust)。





      不過在看這篇博客之前,我們先簡單了解一下 uv 這個項目本身。

      簡單來說,uv 是一個面向 Python 生態系統的高速「一體化」工具,可用于包管理、環境管理、項目初始化、工具執行、Python 版本管理等。其由 Astral(同樣推出了知名工具 Ruff)開發,底層使用 Rust 語言實現,以追求極致性能。對于已有的工作流、pip、virtualenv、pipx、poetry 等工具,uv 提供極強的兼容性并且在某些場景下速度可提升 10–100 倍。



      截至目前,該項目在 GitHub 已經收獲了超 7.1 萬 star!



      • 項目:https://github.com/astral-sh/uv
      • 文檔:https://docs.astral.sh/uv/

      以下是 uv 的一些關鍵特性:

      • 一款工具即可取代 pip、pip-tools、pipx、poetry、pyenv、twine、virtualenv 等眾多工具。
      • ?? 比 pip 快 10 到 100 倍。
      • ? 提供完善的項目管理功能,并支持通用鎖定文件(lockfile)。
      • ?? 可直接運行腳本,并支持內聯依賴元數據。
      • 支持安裝和管理多個 Python 版本。
      • ? 可運行或安裝以 Python 包形式發布的命令行工具。
      • 內置兼容 pip 的接口,在保持熟悉命令行體驗的同時大幅提升性能。
      • 支持類似 Cargo 的工作區結構,輕松管理大型項目。
      • 磁盤占用高效,依賴可通過全局緩存實現去重。
      • ? 無需預裝 Rust 或 Python,即可通過 curl 或 pip 安裝。
      • ? 兼容 macOS、Linux 和 Windows 系統。

      接下來,我們就來看看為什么說「uv 是近十年來 Python 生態系統發生的最好的事情」。



      • 博客標題:uv is the best thing to happen to the Python ecosystem in a decade
      • 博客地址:https://emily.space/posts/251023-uv

      都 2025 年了。難道安裝 Python、管理虛擬環境、在同事間同步依賴,還非得那么費勁嗎?

      嗯... 真的不用!

      最近,一款名為 uv 的杰出新工具橫空出世。它徹底革新了 Python 的安裝和使用方式,讓一切變得無比簡單。

      uv 是一款免費的開源工具。它由 Astral 打造,這是一家小型創業公司,過去幾年一直在持續產出優秀的 Python 工具(比如大名鼎鼎的 linter Ruff)。uv 能做到:

      • 為你安裝任意 Python 版本
      • 安裝軟件包
      • 管理虛擬環境
      • 極速解決依賴沖突(這對大型項目至關重要)

      最棒的是,在我看來,uv 在上述所有方面都比其他任何工具做得更好。

      它的速度快得驚人。它由 Rust 語言編寫,并且幾乎兼容所有操作系統或平臺。

      安裝 uv

      uv 的安裝非常簡單。有幾種方法,但我認為最簡單的是這個單行命令。

      對于 Linux 和 Mac 用戶:

      curl -LsSf https://astral.sh/uv/install.sh | sh

      或者,Windows 用戶在 PowerShell 中使用:

      powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

      之后,你就可以通過 uv 命令來使用它了。

      安裝 uv 不會搞亂你現有的任何 Python 環境。它是一個完全獨立的工具,所以你可以放心地安裝并試用。

      管理項目的 Python

      無論開發什么 Python 項目,使用虛擬環境都是一個好習慣。

      虛擬環境能將不同項目的代碼和依賴相互隔離開。以我的經驗來看,盡早養成這個習慣能省去未來很多麻煩。

      uv 天生就會使用虛擬環境。因此,一旦你開始用 uv,上手虛擬環境也會變得非常容易。

      uv 會根據你當前目錄(或父目錄)中 pyproject.toml 文件的配置來構建 Python 環境。

      pyproject.toml 文件是指定 Python 項目依賴的標準、現代格式。一個最精簡的 pyproject.toml 文件可能如下所示:

      [project]

      name = "my_project"

      version = "1.0.0"

      requires-python = ">=3.9,<3.13"

      dependencies = [

      "astropy>=5.0.0",

      "pandas>=1.0.0,<2.0",

      簡而言之,它只需要指定使用哪個 Python 版本和一些依賴項。當然,加上項目名稱和版本號也是個好主意。

      (補充一點:如果你的項目需要作為軟件包發布(例如發布到 pip 和 uv 用的 Python 軟件包索引 PyPI),pyproject.toml 文件是指定發布所需全部信息的現代方式。)

      用 uv 創建新項目

      要用 uv 啟動一個新 Python 項目,你可以運行:

      uv init

      這個命令會為你創建一個新項目,包含 pyproject.toml、README.md 和其他重要的模板文件。

      這個命令還有很多變種,比如 uv init --bare(只創建 pyproject.toml)和 uv init --package(設置一個新的 Python 包)等等。

      我建議你運行 uv init --help 來查看所有選項。

      當你(已經)有了 pyproject.toml 文件

      一旦你初始化了項目,或者項目里已經有了 pyproject.toml 文件,使用 uv 就變得非常簡單。

      你只需要在 pyproject.toml 文件所在的目錄中運行:

      uv sync



      這個命令(實際上,如果你還沒運行過,大多數 uv 命令都會)會執行以下操作:

      1. 自動安裝一個有效的 Python 版本。
      2. 在目錄下的 .venv 文件夾中安裝所有依賴,創建一個新虛擬環境。
      3. 在你的目錄中創建一個 uv.lock 文件。該文件會保存每個已安裝包的確切、平臺無關的版本。這意味著你的同事可以完全復刻你的 Python 環境。

      原則上,你可以像激活其他工具創建的虛擬環境那樣「激活」這個新環境。

      但最「uv 風格」的使用方式,是直接在任何命令前加上 uv run。uv run 會自動為你匹配正確的虛擬環境,并用它來執行你的命令。

      例如,要運行一個腳本,你不再需要:

      source .venv/bin/activate

      python myscript.py

      你只需:

      uv run myscript.py

      這樣做的效果是完全一樣的。

      同理,要使用像 Jupyter Lab 這樣的「工具」,你也不需要先「激活」環境再單獨運行 jupyter lab。你只需在項目目錄中運行:

      uv run jupyter lab

      添加依賴

      你當然可以直接手動編輯 pyproject.toml 文件。uv 會檢測到變更并重新構建你項目的虛擬環境。

      但 uv 也提供了更簡單的方式來添加依賴。你只需運行:

      uv add numpy>=2.0

      這樣就可以添加一個包,并(像上面那樣)指定版本限制。

      這個命令會自動為你修改 pyproject.toml 文件。uv add 功能也非常強大,支持從 git 或你電腦上的其他位置添加遠程依賴(但這里我就不展開了)。

      鎖定 Python 版本

      最后,我認為 uv 最有用的功能之一,是為你的項目鎖定一個特定的 Python 版本。

      運行這個命令:

      uv python pin 3.12.9

      這條命令會為你(以及其他任何使用 uv 的人)將當前項目精確鎖定到 Python 3.12.9 版本。

      這意味著你真的可以在多臺機器間復制完全一致的 Python 安裝環境。

      uvx:跳過以上所有步驟,立即運行工具!

      但有時候,你可能只想快速運行一個工具。

      比如,臨時用 Ruff 檢查下代碼,或者在沒有環境時啟動一個 Jupyter notebook 服務器,甚至只是想快速啟動一個裝了 pandas 的 IPython 會話來打開某個文件。

      uv tool 命令(它的縮寫別名是 uvx)讓這一切變得異常簡單。

      運行像下面這樣的命令:

      uvx ruff

      uv 會自動下載你需要的工具,并在一個一次性虛擬環境中運行它。

      一旦這個工具被下載過,uv 就會利用緩存,下次再運行就會快如閃電。

      我有很多場合會用到這個功能。一個常見的場景是,快速啟動一個安裝了 pandas 的 IPython 會話(使用 --with 添加依賴),這樣我就可以快速打開并查看一個 parquet 文件。例如:

      uvx --with pandas,pyarrow ipython

      或者,也許只是想啟動一個 Jupyter Lab 服務器,好讓我能快速打開學生發來的 Jupyter notebook:

      uvx jupyter lab

      老實說,還有太多其他奇怪的、一次性的用例,uvx 都能派上用場。

      我絲毫不會(因為總用虛擬環境)而感到不便,因為 uvx 總能在我需要時提供一張「萬能通行證」。

      如果這還不能說服你:一些個人感想

      我是在去年第一次發現 uv 的。

      當時,我正和我們其他可愛的開發者們一起構建 The Astrosky Ecosystem。這是一個很棒的項目,旨在為天文學家們構建開源的在線社交媒體集成。

      但我們有多個開發者,大家在不同的操作系統上異步工作。很快,管理 Python 安裝就成了一項艱巨的任務。

      對我們而言,uv 是一個極其強大的簡化工具,我們已在整個技術棧中全面使用它。

      作為開發者,我們現在終于能使用完全一致的 Python 安裝環境了。這一點尤其重要,因為我們用的一些半實驗性依賴,每個版本都有破壞性改動。

      在 GitHub Actions,我們正計劃使用 uv 來快速構建 Python 環境并運行單元測試。

      在生產環境中,uv 已經管理著我們所有服務器的 Python。

      能夠確信,我們所有機器上的 Python 和軟件包安裝總能得到一致且正確的處理,這種感覺真是太棒了。

      這就是為什么我說,uv 是近十年來 Python 生態系統發生的最好的事情。



      你已經用上 uv 了嗎?對此有什么看法?

      特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

      Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

      相關推薦
      熱點推薦
      就在今天!11月6日,全運會跳水傳來全紅嬋消息

      就在今天!11月6日,全運會跳水傳來全紅嬋消息

      七七自駕游
      2025-11-06 15:22:41
      女子因F罩杯太累贅想縮到A罩杯,醫生:最多到C

      女子因F罩杯太累贅想縮到A罩杯,醫生:最多到C

      素然追光
      2025-11-06 00:58:20
      美論壇:不管中國承不承認,中國是否已經輸掉了關稅戰?

      美論壇:不管中國承不承認,中國是否已經輸掉了關稅戰?

      朔方瞭望
      2025-11-02 10:06:11
      獨行俠撕毀承諾!湯神被踢到替補卻連抗議都不敢,終于想念庫里了

      獨行俠撕毀承諾!湯神被踢到替補卻連抗議都不敢,終于想念庫里了

      嘴炮體壇
      2025-11-06 10:40:41
      戰敗已成定局!烏軍突襲紅軍城再被全殲,烏前防長:堅持毫無意義

      戰敗已成定局!烏軍突襲紅軍城再被全殲,烏前防長:堅持毫無意義

      云上烏托邦
      2025-11-06 16:02:08
      桃色大瓜!湖南省人民醫院副院長與美女眼科主任的瓜

      桃色大瓜!湖南省人民醫院副院長與美女眼科主任的瓜

      金陵隱士
      2025-11-06 09:34:50
      56號秀的春天,勇士后衛威爾-理查德15中10砍30分7板3助1斷

      56號秀的春天,勇士后衛威爾-理查德15中10砍30分7板3助1斷

      懂球帝
      2025-11-06 13:56:22
      芮銀超:當兵當到極致,比大熊貓還要稀缺,為了留他部隊2改編制

      芮銀超:當兵當到極致,比大熊貓還要稀缺,為了留他部隊2改編制

      玥來玥好講故事
      2025-11-05 20:34:21
      日本人全球最長壽,這5種食物,他們頓頓都要吃,你吃過幾種

      日本人全球最長壽,這5種食物,他們頓頓都要吃,你吃過幾種

      削桐作琴
      2025-11-03 19:29:12
      主動出走,至今下落不明的三位紅軍高級將領,誰的離開最可惜?

      主動出走,至今下落不明的三位紅軍高級將領,誰的離開最可惜?

      明月清風閣
      2025-11-06 14:10:03
      雖說西部墊底難以接受,但至少弗拉格不用再打“控衛”了!

      雖說西部墊底難以接受,但至少弗拉格不用再打“控衛”了!

      小七說籃球
      2025-11-06 16:27:30
      裁員裁到核心是啥體驗?網友:裁到我這條靜脈,都照樣痛很久

      裁員裁到核心是啥體驗?網友:裁到我這條靜脈,都照樣痛很久

      解讀熱點事件
      2025-11-06 00:05:09
      3:0!中國女排晉級四強,大勝對手47分,雙喜臨門,接應新星5發

      3:0!中國女排晉級四強,大勝對手47分,雙喜臨門,接應新星5發

      跑者排球視角
      2025-11-05 23:54:00
      遲遲等不到中方供貨后,安世荷蘭將負100%全責,商務部宣布大結局

      遲遲等不到中方供貨后,安世荷蘭將負100%全責,商務部宣布大結局

      青途歷史
      2025-11-06 00:57:14
      新聞多一度丨神二十推遲返回 空間碎片影響有多大?

      新聞多一度丨神二十推遲返回 空間碎片影響有多大?

      新京報
      2025-11-05 18:11:09
      已經退休的“飛天將軍”聶海勝,如今過著怎樣的生活?

      已經退休的“飛天將軍”聶海勝,如今過著怎樣的生活?

      粵語音樂噴泉
      2025-11-04 07:20:43
      昔反對普發現金,民進黨如今收割政績,臺網紅酸:講好的拒領呢

      昔反對普發現金,民進黨如今收割政績,臺網紅酸:講好的拒領呢

      海峽導報社
      2025-11-05 16:19:03
      美國的國運早已確定,將比蘇聯更加凄慘,而且無可避免

      美國的國運早已確定,將比蘇聯更加凄慘,而且無可避免

      揭秘歷史的真相
      2025-11-05 21:37:05
      中方反駁美方針對中國軍品出口指責

      中方反駁美方針對中國軍品出口指責

      界面新聞
      2025-11-06 12:24:41
      不雅視頻流出!醫院副院長出軌眼科主任?官方回應

      不雅視頻流出!醫院副院長出軌眼科主任?官方回應

      上觀新聞
      2025-11-06 13:25:05
      2025-11-06 18:15:00
      機器之心Pro incentive-icons
      機器之心Pro
      專業的人工智能媒體
      11665文章數 142499關注度
      往期回顧 全部

      科技要聞

      小鵬機器人里藏真人?何小鵬發一鏡到底視頻

      頭條要聞

      孫東旭離開東方甄選 曾因與董宇輝"小作文風波"引爭議

      頭條要聞

      孫東旭離開東方甄選 曾因與董宇輝"小作文風波"引爭議

      體育要聞

      送走兩位全明星,公牛成了東部第一

      娛樂要聞

      “黑料纏身”的白百何 誰給她的勇氣?

      財經要聞

      南銀法巴加速發展背后:資金饑渴癥待解

      汽車要聞

      是我眼花了么?怎么大猩猩都來參加新車發布了?

      態度原創

      親子
      時尚
      家居
      旅游
      本地

      親子要聞

      11月11日 | 陳慧敏督導專題講座,破解迷思,剖析影子老師的角色定位

      中國色特別策劃 | 故宮技藝與古意新生

      家居要聞

      別樣府院 暢享詩意生活

      旅游要聞

      景色醉人真情暖心,山東多景區用心“寵客”換來“秋游熱”

      本地新聞

      這屆干飯人,已經把博物館吃成了食堂

      無障礙瀏覽 進入關懷版 主站蜘蛛池模板: 国产精品中文字幕在线| 中国亚洲女人69内射少妇| 一个色综合国产色综合| 国产精品午夜福利片国产| 亚洲男人av香蕉爽爽爽爽| 欧美黑人又粗又大又爽免费 | 少妇又爽又刺激视频| 日韩av毛片福利国产福利| 国产精品午夜无码AV天美传媒 | 樱花草在线社区www| 99视频在线精品国自产拍| 精品久久人人妻人人做精品| 国产区精品福利在线观看精品| 亚洲一区二区无码影院| 日韩精品专区在线影观看| 人人妻人人做人人爽| 国产亚洲精品AA片在线爽| 国产免费视频一区二区| 中文字幕日韩有码国产| 国产精品十八禁一区二区| 国产普通话对白刺激| 少妇性bbb搡bbb爽爽爽欧美| 久久精产国品一二三产品| 国产福利姬喷水福利在线观看 | 久久亚洲精品中文字幕馆| 国产精品无码一区二区桃花视频 | 国产在线精品福利91香蕉| 久热这里只有精品蜜臀av| 国产成人精品永久免费视频| 极品少妇xxxx| 国产情侣一区二区三区| 国产日韩精品视频无码| 亚洲啪啪精品一区二区的| 精品国产一区二区亚洲人| 黄色免费在线网址| 岛国最新亚洲伦理成人| 鲁鲁网亚洲站内射污| 99久久精品费精品国产一区二| 久久亚洲精品情侣| 国内精品人妻无码久久久影院导航| 色综合色综合久久综合频道88|