Windows系統下python新一代三方庫管理工具uv及VSCode配置

python新一代三方庫管理工具uv

uv是什么?

uv是用RUST語言寫的一個python三方庫和項目管理工具,詳見官網(uv)。

uv的安裝

官網上提供了兩種安裝方式,第一種需要在PS終端里運行一下命令進行安裝:

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

另一種的話,如果已經安裝過python的話,可以直接使用pip安裝,這也是本人比較推薦的方式:

pip install uv

設置鏡像源

雖然都說uv很快,但很多人安裝了uv后,感覺uv也不是很快,這個就有點兒冤枉uv了。主要還是鏡像的問題。可以參見我的另一個文章(關于anaconda的一些初級小配置)。

具體要設置的話,需要你手動在電腦的文件路徑欄里輸入?%APPDATA%,并在該目錄下創建uv文件夾并進入。然后在uv文件夾里創建?uv.toml?文件并打開。內容為:

[[index]]
url = "http://mirrors.aliyun.com/pypi/simple/"
default = true

?相信細心的小伙伴已經看出來了,url其實就是python pip的鏡像源,任何一個鏡像源都可以,這里采用的是阿里云鏡像源。

創建虛擬環境

uv創建虛擬環境的話有兩種方式,一種是類似于anaconda,統一創建并管理虛擬環境,另一種是跟隨項目創建。這里先介紹第一種方式:

首先可以在任意一個位置創建一個uvenv的文件夾用來集中放置虛擬環境。示例中將其創建在了C:\Users\Dhixuan\uvenv

創建好后,打開cmd,并進入該路徑。然后使用如下命令創建虛擬環境,其中env_name虛擬環境的命名,可以按自己需要進行修改。使用--python 指定具體的python版本

uv venv env_name --python 3.xx 

此時虛擬環境就已經創建好了,然后運行如下命令進行激活虛擬環境。

env_name\Scripts\activate

注意:如果遇到報錯,可以需以管理員身份運行PowerShell,執行"set-executionpolicy remotesigned"命令解除限制即可解決問題

?接下來,就可以在該虛擬環境下進行安裝python三方庫了,安裝命令也很簡單,直接在pip install 前加入uv即可。

uv pip install xxx

至于要刪除某個庫,與pip一樣,可以運行uv pip uninstall即可。

配置VSCode

由于uv是新出的一個python三方庫管理工具,所以創建的虛擬環境,vscode并不能自動索引到。故而需要在vscode中進行一些設置。

如圖所示,依次打開vscode、設置、轉換為json。并在最后添加以下內容。

    "python.venvPath": "C:\\Users\\Dhixuan\\uvenv","python.venvFolders": ["C:\\Users\\Dhixuan\\uvenv"]

可以注意到這里的路徑其實就是創建uvenv的路徑。?

?至此 vscode就能檢測到uv所創建的虛擬環境了。可以運行命令面板,并輸入python 解釋器進行驗證。

使用uv進行項目管理

首先可以用vscode打開一個空項目(空文件夾),然后在終端里運行uv init,即可對項目進行初始化,可以看到會自動創建 git管理、python環境依賴和項目信息

在該項目下,可以在終端輸入 uv venv --python 3.xxx,即可以創建適合于該項目的python版本

然后再次運行 uv venv即可以創建 適合于該項目的 虛擬環境

使用 uv add xxx 即可給該項目環境 安裝具體的三方庫,且項目環境文檔會自己更新

另外,拿到別人的項目的話 可以使用 uv sync 對他人項目環境進行復制。

做個小結,uv 項目管理常用命令

uv init #初始化項目
uv venv #創建項目需要的虛擬環境
uv add xxx #安裝python三方庫,并更新環境文檔
uv sync #復制他人環境

總結

親身體驗了以下 uv,發現確實很方便,也很迅速。希望uv能夠做的更好,也值得大家一試。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/94829.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/94829.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/94829.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Node.js 多版本管理工具 nvm 的安裝與使用教程(含鏡像加速與常見坑)

適用人群:前端/后端/全棧開發者,Mac/Linux/Windows(nvm-windows)用戶;需要在多項目間快速切換 Node 版本、或在國內網絡環境下穩定安裝 Node。一、為什么要用 nvm?一機多版本:不同項目依賴不同 …

Unity Shader unity文檔學習筆記(二十一):幾種草體的實現方式(透明度剔除,GPU Instaning, 曲面細分+幾何著色器實現)

1.透明度剔除(性能較差,不同顏色時需要不同材質會導致多個dc) clip(_Color.a - _Cutoff); 傳入值為0時 剔除 類似的草體效果: 2.GPU Instaning(可以自定義一次性合批最多1023個,能夠傳遞顏色值等等(做草…

UX 設計入門終章:讓洞察落地!用用戶流程圖、IA 和旅程圖,設計用戶與產品的互動故事

歡迎來到本系列課程的最后一課。 如果你把之前的學習比作是繪制一份建筑藍圖,那么今天,你將根據自己收集到的所有用戶數據,描繪出空間布局(用戶流程圖)、理清結構關系(信息架構),并最…

【RAG知識庫實踐】向量數據庫VectorDB

一、概述 1.1 什么是向量庫 向量數據庫是一種專門為存儲、索引和查詢高維向量數據而優化的數據庫系統。與傳統的關系型數據庫不同,向量數據庫將數據映射到向量空間中,使得數據的相似性計算、聚類、分類和檢索變得更加高效和精確 向量數據庫一般包括以下幾個部分:索引、查詢…

EasyExcel 3.x 導出動態表頭,動態sheet頁

動態導出sheet頁Overridepublic void exportAnswerListV1(HttpServletResponse response, SmtSurveyUserAnswerRecord smtSurveyUserAnswerRecord) {// 1. 準備問卷數據String formType smtSurveyUserAnswerRecord.getFormType();if (ObjectUtil.isEmpty(formType)) {throw ne…

重學JS-004 --- JavaScript算法與數據結構(四)JavaScript 表單驗證

文章目錄HTMLlabel 屬性input 屬性button 屬性fieldset 屬性select 屬性option 屬性div 屬性scriptgetElementByIdquerySelectorAllnull循環模版文字函數事件監聽器regex舉例StringMathArrayHTML HTML 屬性應該用雙引號引起來。 label 屬性 for“” input 屬性 id“” typ…

本地搭建 Redis/MySQL 并配置國內鏡像加速(Docker/原生安裝 | macOS/Linux/Windows)

適用人群:前端/后端/數據/測試工程師;需要在單機上快速搭建 Redis 與 MySQL 的開發環境;同時在國內網絡環境下加速下載(容器鏡像、系統包倉庫)。文章結構:一圖流 → TL;DR → Docker 方式 → 原生安裝&…

SynClub-百度在海外推出的AI社交產品

本文轉載自:SynClub-百度在海外推出的AI社交產品 - Hello123工具導航 ** 一、🤖 SynClub 是什么? SynClub 是百度出海的 AI 社交產品,主打 "打造專屬 AI 朋友" 的創新概念,讓你在虛擬世界擁有真正懂你的貼…

Easy Rules規則引擎:輕量級Java規則處理實踐指南

引言:業務規則與代碼解耦的藝術 在現代軟件開發中,業務規則頻繁變更與核心邏輯穩定性之間的矛盾日益突出。傳統硬編碼的if-else語句在面對復雜業務場景時會導致: 代碼臃腫:成百上千的條件分支難以維護 耦合度高:業務邏輯與系統架構深度綁定 變更成本高:微小規則調整需要…

機器人 - 無人機基礎(5) - 飛控中的傳感器

目錄 一、加速度計 1.1 加速度計原理 1.2 加速度計校準 1.2.1 誤差模型 1.2.2 關于MPU6050校準方式 與 代碼思路 二、陀螺儀 2.1 陀螺儀原理 2.1.1 科里奧利力 2.1.2 陀螺儀原理 2.2 陀螺儀校準 三、加速度計與陀螺儀濾波部分 四、磁力計 4.1 磁力計原理 4.2 磁力…

PHP - 線程安全 - 疑問與答案

線程安全問題(多線程環境需加鎖) 怎么理解 php有線程安全問題嗎要理解 PHP 中的線程安全問題,需要結合 PHP 的運行模式和線程安全的本質來分析:1. 線程安全的本質線程安全問題的核心是:當多個線程同時訪問共享資源&…

使用腳本進行監測以nginx狀態頁為例

1、首先打開nginx的狀態頁 location /nginx_status {stub_status on;}2、進行訪問測試 curl http://127.0.0.1/nginx_statusActive connections: 1 server accepts handled requests1 1 1 Reading: 0 Writing: 1 Waiting: 03、在客戶端編寫腳本進行數據采集 編寫腳本方便采集不…

prettier、eslint、stylelint在項目中使用

prettier 1)vscode中使用 a. 安裝插件(Prettier)安裝成功后,在你打開支持的文件時,下方文件信息狀態欄會有prettier標致:雙擊它或者直接在輸出命令窗口那里查看prettier的日志信息:從日志這里可以看出,它是…

【C++】類對象內存布局與大小計算

1. 計算類對象的大小類實例化的對象中只存儲成員變量,不存儲成員函數,函數要用是通過 this 指針拿的。因為一個類可以實例化出 N 個對象,每個對象的成員變量都可以存儲不同的值,但是調用的函數卻是同一個。如果每個對象都成員函數…

容易忽視的TOS無線USB助手配網和接入USB使用: PC和TOS-WLink需要IP暢通,

引言:我們常常把重心放在了TOS-WLink的加入路由器,獲取IP;常常忽視了其實是要求PC和TOS-WLink需要IP暢通TOS無線USB助手首次藍牙配網, 無線接入USB設備到電腦, 分為是兩個過程:1, 藍牙連接TOS-WLink,如果配置的WIF…

學習Python中Selenium模塊的基本用法(7:元素操作-1)

定位網頁元素后,Selenium模塊支持點擊、發送文本或按鍵、清除內容等操作。本文以百度網站為例學習并測試這幾類操作的基本用法。首先是發送文本或按鍵,主要用到send_keys函數,如果是發送文本,則直接將文本內容作為函數入參即可&am…

使用MP4視頻格式鏈接地址的自適應視頻彈窗實現方案HTML代碼

以下是使用MP4視頻格式鏈接地址的自適應視頻彈窗實現方案:視頻彈窗播放器 使用原生MP4視頻格式鏈接,直接通過HTML5 video元素播放 響應式設計適配不同屏幕尺寸,16:9視頻比例保持不變 底部視頻列表可橫向滾動,點擊縮略圖切換不同視…

中農具身導航賦能智慧農業!AgriVLN:農業機器人的視覺語言導航

作者:Xiaobei Zhao, Xingqi Lyu, Xiang Li單位:中國農業大學論文標題:AgriVLN: Vision-and-Language Navigation for Agricultural Robots論文鏈接:https://arxiv.org/pdf/2508.07406v1代碼鏈接:https://github.com/Al…

Zynq開發實踐(Verilog、仿真、FPGA和芯片設計)

【 聲明:版權所有,歡迎轉載,請勿用于商業用途。 聯系信箱:feixiaoxing 163.com】zynq最大的優勢,就是把arm和fpga結合在一起了。這樣一顆soc里面,就可以用軟件去驅動外設ip,這是之前沒有過的體驗…

LabVIEW刺激響應測量解析

?該 LabVIEW 程序用于刺激 - 響應測量,實現測試信號生成、響應采集及測量分析,涵蓋信號同步、并行處理等概念,用于設備總諧波失真(THD)等電信號特性測量場景,借助 LabVIEW 圖形化編程優勢,將復…