【学习心得】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

相关推荐
IT规划师5 天前
Redis 数据类型全解 - HyperLogLog:12 KB 估出亿级 UV(八)
redis·uv·hyperloglog·.net10
Martina_03219 天前
AI生成3D模型一合并网格,材质就串色?用6步检查材质槽、UV与图集重映射
图像处理·人工智能·3d·材质·uv·游戏策划·1024程序员节
我不会起名字32210 天前
Redis 从 0 到 1(十六):1 亿 UV 只占 12KB?计数去重三件套的 Go 实测
redis·go·uv·布隆过滤器·hyperloglog
2601_9611462013 天前
实验室等离子表面处理设备安全整改记录:通风、UV、接地三项
笔记·安全·uv
毒爪的小新13 天前
最新 Dify 1.14.0+ 内网离线插件打包、部署完整踩坑方案(解决 uv.lock 依赖校验失败)
运维·ai·uv·dify
醇氧14 天前
CentOS7 使用 uv 安装 Python3.11.9 生产部署文档
uv·python3.11
工业涂料百问21 天前
水性、粉末、UV、溶剂型怎么选?一张对照表看清四条涂层路线的边界
uv
AI 编程助手GPT22 天前
GPT 脚本别只发一个文件:用 uv 把依赖和锁一起交付
人工智能·python·gpt·uv·依赖管理
Martina_032122 天前
AI生成3D模型UV岛太碎,重绘贴图全是接缝?用6步重整UV并保留原材质
图像处理·人工智能·3d·自然语言处理·贴图·uv·游戏策划