uv remove 命令可精准卸载第三方库,自动同步更新 pyproject.toml 和 uv.lock 文件;支持单个、批量及 dev 依赖卸载,并提供 tree 和 import 验证方式。

想从 Python 项目中精准移除某个已安装的第三方库,又不想手动改 pyproject.toml 或删 uv.lock 导致依赖混乱,就得用 uv remove 命令——它会同步更新配置文件和锁文件,确保项目状态一致。
基础卸载:直接删掉一个包
在项目根目录(含 pyproject.toml)下执行:
uv remove requests
这一步会立刻从 pyproject.toml 的 [project.dependencies] 中删除 requests 条目,并更新 uv.lock 文件。如果该包还被其他依赖间接引用,uv 不会强制卸载,避免破坏依赖树。
批量卸载多个包
方法一:空格分隔一次性写全
uv remove pytest black mypy
方法二:逐个执行(适合不确定是否共用依赖时分步验证)
uv remove pytest → uv remove black → uv remove mypy
注意:批量删除时,uv 仍会整体解析依赖关系,不是简单地“删完就走”,所以耗时略高于单个删除,但结果更可靠。
卸载开发依赖(dev-dependencies)
第一步:确认目标包是否在 dev 依赖区
打开 pyproject.toml,检查 [tool.uv.dev-dependencies] 或旧式 [build-system] 下是否有该包。
第二步:加 --dev 参数执行删除
uv remove --dev pytest
不加 --dev 时,uv 默认只操作主依赖([project.dependencies]),即使 pytest 同时出现在两个区域,也只会删主区那一处。漏加参数会导致删不干净。
卸载后验证是否生效
① 检查 pyproject.toml 是否已移除对应条目
② 运行 uv tree 查看依赖树里是否还存在该包
③ 进入虚拟环境后执行 python -c "import requests",若报 ModuleNotFoundError 即表示已成功卸载
⚠️ 如果你用的是未激活环境下的全局 uv 命令(如 py -3.14 -m uv remove xxx),请确保当前目录有有效的 pyproject.toml,否则 uv 会报错找不到项目上下文。










