欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用uv管理Python項(xiàng)目的詳細(xì)說(shuō)明

 更新時(shí)間:2025年06月09日 10:12:11   作者:pinshig  
uv是Astral推出的Rust驅(qū)動(dòng)Python項(xiàng)目管理工具,支持安裝、初始化、依賴(lài)管理與虛擬環(huán)境配置,這篇文章主要介紹了使用uv管理Python項(xiàng)目的詳細(xì)說(shuō)明,需要的朋友可以參考下

下面是一個(gè)詳細(xì)的使用說(shuō)明,介紹如何使用 uv 管理 Python 項(xiàng)目,包括安裝、初始化項(xiàng)目、管理依賴(lài)與虛擬環(huán)境等方面:

1. 安裝 uv

uv 是由 Astral 推出的基于 Rust 編寫(xiě)的 Python 包和項(xiàng)目管理工具,號(hào)稱(chēng)“Python 的 Cargo”。你可以通過(guò)多種方式安裝 uv,例如:

  • macOS/Linux:

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

    powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
    
  • 通過(guò) pip 安裝:

    pip install uv
    

安裝后,可使用 uv help 檢查是否安裝成功。

2. 初始化項(xiàng)目

使用 uv 初始化項(xiàng)目非常簡(jiǎn)單。只需創(chuàng)建一個(gè)空文件夾,然后運(yùn)行:

uv init myproject

這會(huì)在項(xiàng)目目錄中生成以下幾個(gè)文件:

  • pyproject.toml:記錄項(xiàng)目名稱(chēng)、版本、描述、所需 Python 版本以及依賴(lài)列表。
  • .python-version:記錄當(dāng)前使用的 Python 版本。
  • README.md 和 .gitignore 等文件。

例如,創(chuàng)建成功后的目錄結(jié)構(gòu)可能如下:

myproject/
  ├── .gitignore
  ├── .python-version
  ├── hello.py
  ├── pyproject.toml
  └── README.md

3. 同步環(huán)境與虛擬環(huán)境管理

同步依賴(lài)

首次進(jìn)入項(xiàng)目后,運(yùn)行以下命令可自動(dòng):

  • 檢測(cè)或下載合適的 Python 版本;
  • 創(chuàng)建項(xiàng)目專(zhuān)用的虛擬環(huán)境(通常位于 .venv 目錄下);
  • 根據(jù) pyproject.toml 和現(xiàn)有依賴(lài)生成或更新 uv.lock 鎖定文件;
  • 同步依賴(lài)到虛擬環(huán)境中。
uv sync

運(yùn)行后,若項(xiàng)目沒(méi)有額外依賴(lài),uv.lock 文件中只會(huì)記錄最基本的信息。

創(chuàng)建和管理虛擬環(huán)境

如果需要手動(dòng)管理虛擬環(huán)境,你可以使用:

  • 創(chuàng)建虛擬環(huán)境:

    uv venv myenv
    

    若需要指定 Python 版本:

    uv venv --python /path/to/python myenv
    
  • 激活虛擬環(huán)境:Linux/macOS 下:

    source myenv/bin/activate
    

    Windows 下:

    myenv\Scripts\activate
    

4. 管理依賴(lài)

uv 提供了類(lèi)似于 npm 或 Cargo 的依賴(lài)管理命令,可以非常便捷地添加、刪除或更新依賴(lài)包。

添加依賴(lài)

例如,添加 pandas 依賴(lài):

uv add pandas

這時(shí),uv 會(huì)自動(dòng)解決 pandas 及其依賴(lài),并更新 pyproject.toml(記錄依賴(lài))和 uv.lock(記錄所有詳細(xì)依賴(lài)版本信息)。

刪除依賴(lài)

刪除依賴(lài)也同樣簡(jiǎn)單:

uv remove pandas

此命令會(huì)自動(dòng)卸載 pandas 及其不再需要的依賴(lài),同時(shí)更新鎖定文件。

分組管理依賴(lài)

你還可以為開(kāi)發(fā)環(huán)境和生產(chǎn)環(huán)境分別添加依賴(lài),例如:

  • 添加開(kāi)發(fā)環(huán)境依賴(lài):

    uv add --group dev pandas
    
  • 添加生產(chǎn)環(huán)境依賴(lài):

    uv add --group production requests
    

這些分組信息會(huì)記錄在 pyproject.toml 的 [dependency-groups] 部分。

5. 運(yùn)行項(xiàng)目

與傳統(tǒng)直接調(diào)用 python hello.py 不同,uv 建議你使用統(tǒng)一的命令來(lái)運(yùn)行項(xiàng)目代碼。你可以使用:

uv run hello.py

該命令會(huì)自動(dòng)在項(xiàng)目的虛擬環(huán)境中執(zhí)行代碼,確保所有依賴(lài)都已正確安裝。

6. 其它 uv 命令

  • uv pip:提供與 pip 兼容的接口管理包,例如安裝、卸載、列出包等。
  • uv lock:根據(jù) pyproject.toml 更新或生成 uv.lock 文件,記錄所有包的精確版本。
  • uv tree:以樹(shù)狀結(jié)構(gòu)顯示項(xiàng)目的依賴(lài)關(guān)系,幫助你快速了解依賴(lài)層次結(jié)構(gòu)。
  • uv python find:查找已安裝的 Python 版本。
  • uv python list:列出可供安裝的 Python 版本以及系統(tǒng)中已安裝的版本。
  • uv python install <version>:將 <version> 替換為您希望安裝的多個(gè) Python 版本號(hào),例如 3.10 3.11 3.12 pypy@3.10
  • uv python pin <version>:固定當(dāng)前目錄下使用的python版本。
  • uv run -p <version> python:進(jìn)入指定python版本的解釋器交互環(huán)境。

這些命令使得整個(gè)項(xiàng)目管理體驗(yàn)更為統(tǒng)一和高效。

7.總結(jié)

  • 當(dāng)前目錄下默認(rèn)用的python版本是uv python find對(duì)應(yīng)版本.
  • 當(dāng)前目錄下指定版本用uv python pin <version>會(huì)在當(dāng)前目錄下生成一個(gè).python-version文件。
  • 指定的Python版本運(yùn)行指令: uv init/add/remove/run/pip -p <version>。

到此這篇關(guān)于使用uv管理Python項(xiàng)目的文章就介紹到這了,更多相關(guān)uv管理Python項(xiàng)目?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論