【学习心得】UV包和项目管理工具

uv是一个用 Rust 编写的极速 Python 包和项目管理工具。

一、安装UV

方法一:windows中(开代理)安装在全局

bash 复制代码
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

方法二:Linux中安装在全局

bash 复制代码
curl -LsSf https://astral.sh/uv/install.sh | sh
wget -qO- https://astral.sh/uv/install.sh | sh

方法三:通过pipx安装

bash 复制代码
# 先安装pipx
pip install pipx

# 再安装uv
pipx install uv

# 最后配置环境变量
pipx ensurepath

配置下载源

bash 复制代码
# linux中临时(当前 shell)
export UV_INDEX_URL="https://pypi.tuna.tsinghua.edu.cn/simple"

# linux中永久(追加到 .bashrc 或 .zshrc)
echo 'export UV_INDEX_URL="https://pypi.tuna.tsinghua.edu.cn/simple"' >> ~/.bashrc

# 或者在项目的pyproject.toml中写入
[tool.uv]
index-url = "https://pypi.tuna.tsinghua.edu.cn/simple"

二、功能1:python版本管理

(1)安装特定版本的python

bash 复制代码
uv python install 3.12

# 如果你不指定的话就会默认安装最新的
uv python install

(2)要查看可用和已安装的 Python 版本

bash 复制代码
uv python list

三、功能2:虚拟环境管理

(1)创建虚拟环境

bash 复制代码
# 在当前路径所在项目创建一个虚拟环境,名字叫做.venv
uv venv

# 激活进入虚拟环境
source .venv/bin/activate

(2)在虚拟环境中安装python包

bash 复制代码
# 只安装不声明
uv pip install vllm

# 推荐,声明依赖并安装
uv add vllm
uv add -r requirements.txt

【注】uv add 是"声明依赖并安装",uv pip install 是"只安装不声明"

(3)删除一个python包

bash 复制代码
# 删除包的同时移除依赖
uv remove vllm

# 只删除包
uv pip uninstall vllm

四、功能3:项目管理

(1)创建项目

你可以使用 uv init 命令创建一个新的 Python 项目

bash 复制代码
uv init hello-world
cd hello-world

或者,你也可以在当前工作目录中初始化一个项目

bash 复制代码
mkdir hello-world
cd hello-world
uv init

五、功能4:工具管理

(1)uvx 命令可在不安装工具的情况下调用它

bash 复制代码
uvx ruff

# 等同于
uv tool run ruff

# 可以在工具后面跟参数
uvx pycowsay hello from uv

(2)安装工具

bash 复制代码
uv tool install <tool>

(3)卸载工具

bash 复制代码
uv tool uninstall <tool>

(4)升级工具

bash 复制代码
uv tool upgrade <tool>

(5)查看工具

bash 复制代码
uv tool list

六、参考资料

菜鸟教程 | UVhttps://www.runoob.com/python3/uv-tutorial.htmluv 中文文档https://uv.doczh.com/【腾讯文档】uv项目管理工具 https://docs.qq.com/mind/DY05jaWJLdmVjb3ZV?mode=mind

相关推荐
2601_962284502 天前
uv:终结 Python 虚拟环境管理乱局
python·项目管理·uv·虚拟环境·依赖管理
一直走下去-明4 天前
在 Windows 上安装 uv
windows·uv
<花开花落>5 天前
Python 项目迁移到 uv:经验小结与可复用工作流
python·uv
Hello Mr.Z5 天前
microduck_rl(MuJoCo+PPO+WandB+UV训练机器人)
机器人·uv·rl·ppo·microduck
点心的游戏开发世界9 天前
UnityShaderGraph滚动UV笔记
笔记·uv
长江后浪博客11 天前
陶瓷盘UV喷墨印刷中的Z轴高度测量与防碰撞技术方案
数码相机·uv·陶瓷盘uv打印·uv喷墨印刷·z轴测高·喷头防碰撞·激光位移传感器
大衛說13 天前
02 · 环境搭建:uv 包管理与现代 IDE
ide·uv
咋吃都不胖lyh18 天前
使用 uv 根据 requirements.txt 创建并应用虚拟环境
uv
欧叶冲冲冲20 天前
uv Python 环境管理笔记
笔记·python·uv
hqzing20 天前
几个主流的环境管理器(rustup、uv、nvm、fnm)已经在鸿蒙 PC 上可用
uv