精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

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

人工智能 新聞
來自英國的天文學家和科學傳播者 Emily L. Hunt 博士在自己的博客上發布了一篇文章,稱「uv 是近十年來 Python 生態系統發生的最好的事情」。

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 了嗎?對此有什么看法?

責任編輯:張燕妮 來源: 機器之心
相關推薦

2020-06-21 14:04:28

漏洞網絡安全攻擊

2012-01-09 10:21:00

2018-07-03 10:01:58

2009-10-23 10:13:22

Windows7

2019-10-23 11:00:48

半導體5GAI

2017-11-24 08:45:47

微服務數據庫區塊鏈

2020-03-05 10:28:19

MySQLMRR磁盤讀

2022-10-08 00:00:00

Spring數據庫項目

2017-06-22 12:06:42

2017-04-26 17:10:00

咕咚MVCMVVM

2020-09-27 06:53:57

MavenCDNwrapper

2020-09-22 08:22:28

快充

2010-11-01 01:25:36

Windows NT

2020-10-14 06:22:14

UWB技術感知

2011-04-27 09:30:48

企業架構

2020-04-03 15:47:00

手機出貨量2020年

2023-10-11 08:29:54

volatileJava原子性

2009-06-09 22:11:44

JavaScriptObject

2023-01-02 12:55:51

論文深度學習

2021-01-21 21:24:34

DevOps開發工具
點贊
收藏

51CTO技術棧公眾號

亚洲欧美精品一区二区| 国产乱国产乱300精品| 亚洲成人aaa| 亚洲精品无码久久久久久| 国产精品天堂| 国产自产高清不卡| 国外成人免费在线播放| 日本理论中文字幕| 国产高清不卡视频| 中文天堂在线视频| 精品一区二区三| 日韩欧美国产麻豆| 国产精品69页| 免费精品视频一区二区三区| 99视频在线看| 久久亚洲成人| 日韩精品视频免费| 国产调教打屁股xxxx网站| 台湾佬中文娱乐久久久| 一区二区三区四区精品在线视频 | 一区二区精品在线| 日韩欧美在线观看一区二区| 国内精品久久久久影院色| 奇米影视亚洲狠狠色| 久久精品波多野结衣| 成人午夜国产| 亚洲人成在线电影| 日本不卡视频一区| 久久国产精品免费一区二区三区| 日本高清不卡视频| 男女视频网站在线观看| 91麻豆免费在线视频| 国产女人18水真多18精品一级做 | wwwwwxxxx日本| 亚洲天堂av影院| 亚洲综合久久久久| 国产手机视频在线观看| 91精品国产91久久久久游泳池 | 都市激情综合| 午夜精品久久久久久久| 4444亚洲人成无码网在线观看| 在线看免费av| 国产精品嫩草影院av蜜臀| 日韩精品久久一区二区三区| 日本在线一二三| 91碰在线视频| 欧美日韩国产综合视频在线| 四虎电影院在线观看| 成人黄色中文字幕| 欧美日韩一区二区电影| 欧美lavv| 日本大臀精品| www亚洲一区| 久久涩涩网站| 黄色在线视频观看网站| 国产亚洲精品中文字幕| 欧美一区激情视频在线观看| 欧美另类自拍| 国产亚洲精品资源在线26u| 日韩亚洲不卡在线| 在线观看黄av| 亚洲欧洲综合另类| 欧美少妇一区二区三区| 2020国产在线视频| 亚洲国产日产av| 黄色av网址在线播放| 手机在线观看av| 色天使久久综合网天天| 蜜臀av免费观看| 久久久久xxxx| 黄色在线看片| 午夜欧美在线一二页| 亚洲 欧美 日韩 国产综合 在线| 黄色在线免费观看网站| 色欧美片视频在线观看在线视频| 国产福利一区视频| 成人免费网站黄| 老司机aⅴ在线精品导航| 日韩成人黄色av| 极品人妻videosss人妻| 99久久99热这里只有精品 | 丰满少妇高潮一区二区| 91综合久久一区二区| 石原莉奈在线亚洲三区| 亚洲精品一区二区三区蜜桃下载 | 久久综合九色综合欧美98| 欧美一区二区三区四区在线观看地址 | 色av吧综合网| 麻豆视频在线观看| 性色一区二区| 91久久精品久久国产性色也91| 人妻偷人精品一区二区三区| 国产欧美久久久精品影院| 黄色录像特级片| 亚洲免费福利| 日韩精品专区在线影院重磅| 欧美熟妇激情一区二区三区| 欧美日韩视频一区二区三区| 久久天天躁狠狠躁夜夜躁| 日产精品久久久| 国内精品写真在线观看| 免费看成人片| 免费污视频在线| 欧美日韩亚洲综合在线 | 91sa在线看| 国产人妻精品一区二区三| 久久蜜桃av一区二区天堂| 国内外成人激情免费视频| 欧美黑人巨大xxxxx| 日韩欧美高清在线| 来吧亚洲综合网| 久久精品盗摄| 国产日韩一区二区| 2024最新电影免费在线观看| 欧美色网站导航| 国产精品无码久久久久久| 亚洲午夜激情在线| 国产精品99久久久久久www| 搡老岳熟女国产熟妇| 亚洲日本va在线观看| 国产精品无码一本二本三本色| 超碰在线成人| 欧美久久精品午夜青青大伊人| 波多野结衣激情视频| 97久久精品人人澡人人爽| 4444亚洲人成无码网在线观看| 欧美啪啪网站| 这里只有精品视频在线| 亚洲精品中文字幕乱码三区91| 9色porny自拍视频一区二区| 日本大胆人体视频| 欧美h版在线观看| 久久精品视频网站| 草民午夜欧美限制a级福利片| 男人的午夜天堂| 美国十次了思思久久精品导航| 欧美日韩一区二| 欧美91看片特黄aaaa| 精品视频在线播放免| 日本少妇激情视频| 99久久婷婷国产综合精品电影 | 一区二区黄色| 狠狠色狠狠色综合人人| 狠狠操一区二区三区| 亚洲国产成人精品一区二区| 国产一级视频在线| 成人黄色国产精品网站大全在线免费观看| 青青草综合在线| 2020最新国产精品| 精品久久国产字幕高潮| 国产麻豆一区二区三区在线观看| 成人日日夜夜| 在线不卡欧美精品一区二区三区| 纪美影视在线观看电视版使用方法| 久久字幕精品一区| 视频一区视频二区视频三区高| 日韩色淫视频| 国产91丝袜在线播放0| 欧美日韩综合网| 九九热线视频只有这里最精品| 国产视频久久久| 欧美成人一区二区三区四区| 欧美国产日韩精品免费观看| 亚洲精品性视频| 午夜国产精品视频免费体验区| 99r国产精品视频| 51av在线| 亚洲性av在线| 国产精品一区二区黑人巨大| 亚洲综合区在线| 永久免费看mv网站入口78| 奇米亚洲午夜久久精品| 国产一级片91| 色综合久久中文| 国产精品久久久久久久天堂| а√天堂资源地址在线下载| 亚洲丁香久久久| 最近中文字幕免费在线观看| 亚洲精品成人少妇| 中文人妻一区二区三区| 看片的网站亚洲| 日韩极品视频在线观看| 国产伦精品一区二区三区千人斩 | 91精品国产综合久久香蕉最新版 | 中文字幕一区二区三区av| 亚欧美一区二区三区| 国产精品二区一区二区aⅴ| 国产精品视频久久一区| 中国人体摄影一区二区三区| 538任你躁精品视频网免费| 青青a在线精品免费观看| 精品黄色免费中文电影在线播放| 亚洲第一av网| 97超碰国产在线| 天天操天天综合网| 性欧美疯狂猛交69hd| 91片黄在线观看| 欧美日韩一区二区区| 久久一区亚洲| 黄色三级中文字幕| 日韩欧美高清| 九九九九九九精品| 精品国产鲁一鲁****| 人人澡人人澡人人看欧美| 成人午夜在线影视| 一区二区成人av| 午夜国产在线视频| 欧美岛国在线观看| 国产影视一区二区| 日本二三区不卡| 看片网站在线观看| 中文字幕永久在线不卡| 丰满圆润老女人hd| 成人福利在线看| 午夜激情视频网| 免费高清在线视频一区·| av免费观看网| 合欧美一区二区三区| 亚洲乱码一区二区三区| 亚洲伊人春色| 国内一区二区三区在线视频| 日韩免费一级| 91亚洲一区精品| 韩国精品视频在线观看| 国产成人av网| 国产精品扒开腿做爽爽爽视频软件| 久久久免费观看| bt在线麻豆视频| 久久精品视频导航| 毛片av在线| 视频一区视频二区国产精品| 高清在线观看av| 亚洲人在线视频| 欧美日韩影视| 亚洲精品一区中文| 免费成人av电影| 亚洲美女视频网| 奇米影视888狠狠狠777不卡| 日韩电影大片中文字幕| 欧美一区二区三区激情| 精品日韩在线观看| 成人久久久精品国产乱码一区二区 | 99热这里只有精品3| 欧美一级理论片| 五月婷婷之综合激情| 神马久久资源| 热久久视久久精品18亚洲精品| av老司机在线观看| 久久久久久国产精品| 美足av综合网| 国模精品视频一区二区| av免费不卡国产观看| 午夜精品久久久久久久白皮肤| 91制片在线观看| 91精品国产91久久久久久不卡| 黄色在线观看www| 青草热久免费精品视频 | 国产一区二区精品福利地址| 奇米视频888战线精品播放| 久久99国产精品视频| 日韩在线电影一区| 国产精品黑丝在线播放 | youjizz亚洲女人| 亚洲视频免费在线观看| 欧美片一区二区| 五月天久久比比资源色| www.久久久久久久| 在线综合色站| 91在线无精精品一区二区| 日韩精品一区二区三区中文 | wwwwxxxx日韩| 韩国一区二区三区| 国产精品日日摸夜夜爽| 久久综合成人精品亚洲另类欧美 | 亚洲午夜羞羞片| 视频一区二区三区四区五区| 欧美性受极品xxxx喷水| 亚洲国产成人在线观看| 亚洲老司机av| 中文字幕中文字幕在线中高清免费版| 久久久在线视频| 国产私拍福利精品视频二区| 99中文字幕| 国产一区二区三区四区| 91精品国产毛片武则天| 亚洲一区欧美激情| 亚洲精品综合在线观看| 99在线热播精品免费| 精品人妻av一区二区三区| 自拍偷在线精品自拍偷无码专区| 波多野结衣亚洲一区二区| 午夜精品成人在线| 青青艹在线观看| 精品国产免费视频| jzzjzzjzz亚洲成熟少妇| 欧美黑人狂野猛交老妇| 国产精品久久久久av电视剧| 91九色露脸| 欧美日韩伦理| 精品久久久久久久一区二区蜜臀| 人妻va精品va欧美va| 日韩在线观看高清| 美女高潮在线观看| 成人情趣片在线观看免费| 亚州av日韩av| 青青草视频在线视频| 日韩福利电影在线观看| 蜜臀av粉嫩av懂色av| 中文字幕日本不卡| 在线永久看片免费的视频| 日韩免费成人网| 日韩欧美小视频| 国产www精品| 美女福利一区| youjizz.com在线观看| 久久精品国产久精国产| 午夜理伦三级做爰电影| 亚洲成av人片一区二区梦乃| 国产精品特级毛片一区二区三区| 亚洲天堂av女优| 乱人伦视频在线| 都市激情久久久久久久久久久| 91欧美日韩| 91看片在线免费观看| 久久综合资源网| 国产污污视频在线观看| 精品国产乱码久久久久久久久| 动漫一区在线| 成人国产精品久久久久久亚洲| 成人亚洲一区二区| 在线视频日韩一区| 久久婷婷久久一区二区三区| 五月婷婷激情网| 亚洲国产精品久久久久秋霞蜜臀| 超碰97国产精品人人cao| 亚洲伊人成综合成人网| 亚洲理论电影网| 色综合五月婷婷| 亚洲少妇中出一区| 国产精品无码久久av| 欧美成人免费va影院高清| 国产精品久一| 蜜臀av性久久久久蜜臀av| 国产精品99久久久| 久久久精品99| 亚洲高清在线观看| 中文字幕在线看片| 麻豆av一区二区三区久久| 亚洲一区不卡| 亚洲图片另类小说| 精品视频免费看| 男人资源在线播放| 91免费在线观看网站| 伊人成人在线视频| 国产精品伦子伦| 色激情天天射综合网| 日本欧美在线视频免费观看| 成人免费午夜电影| 国内精品福利| 国产伦精品一区二区免费| 希岛爱理中文字幕| 中文字幕日韩欧美一区二区三区| 在线观看一二三区| 不卡av在线网站| 精品自拍偷拍| 成年人在线看片| ...xxx性欧美| 亚洲国产欧美另类| 欧美性做爰毛片| 日韩电影免费网址| 91性高潮久久久久久久| 亚洲一区二区三区中文字幕在线| 天天干在线观看| 国产精品久久久久国产a级| 亚洲天堂免费| www.88av| 欧美日韩你懂的| av影视在线| 亚洲国产一区二区三区在线| 国产精品一区二区三区四区| 日产亚洲一区二区三区| 一道本无吗dⅴd在线播放一区| 成人在线啊v| 97视频在线免费播放| 中文字幕一区视频| 天天干,天天操,天天射| 国产精品中文字幕在线| 亚洲视频碰碰| 毛片aaaaaa| 亚洲电影免费观看| 日日夜夜综合| 北条麻妃在线视频观看| 综合在线观看色| 日韩电影在线观看完整版| 成人欧美在线观看| 久久久成人网| 久久精品无码人妻| 日韩一二三在线视频播| 网曝91综合精品门事件在线| 色婷婷综合在线观看|