直接运行uv pip list可快速确认包是否在当前python环境生效,需先用which python或where python核对解释器路径,支持--python指定路径、--user/--local区分安装范围、--outdated检查更新及pip freeze导出依赖。

你想快速确认用 uv 安装的 requests、numpy 或其他包是否真正在当前 Python 环境里生效,而不是在系统全局或另一个虚拟环境中“隐身”,直接运行 uv pip list 就能立刻看到真实安装状态,无需切换目录、不用激活环境(但必须确保终端指向目标环境)。
确认当前环境再执行 uv pip list
先运行 which python(macOS/Linux)或 where python(Windows),核对输出路径是否为你预期的环境,比如 /Users/name/.venv/myproj/bin/python 或 C:\myproj\.venv\Scripts\python.exe。【如果路径指向系统 Python 或其他项目环境,uv pip list 显示的就不是你要查的那个环境】
若使用 uv 创建过虚拟环境,但尚未激活,可直接用 uv pip list --python /path/to/your/python 指定解释器路径,跳过手动 activate 步骤。
基础查看:列出所有已安装包
在终端中输入:
uv pip list
回车后会以表格形式显示 Package 和 Version 两列,按包名首字母升序排列。这一步操作起来很简单,直接敲完回车就行。
注意:该命令等价于 pip list,但底层由 uv 驱动,响应更快,尤其在包数量多(>200)时差异明显。
精准筛选:只看某个包是否存在
方法一:用管道过滤(推荐 Linux/macOS)
uv pip list | grep requests
方法二:Windows 用户用 findstr
uv pip list | findstr requests
方法三:不依赖 shell 工具,直接用 uv 的原生支持(uv 1.2+ 版本起)
uv pip list --format=freeze | grep "^requests=="
这一步能避开大小写干扰和部分匹配误报——比如你搜 req 不会把 requrests-extra 也列出来。
构建并发布在 Quartz 平台上的韩语网络小说连载(草稿→封面→webp→章节 md→lint→发布),使用 Nano Banana Pro + ffmpeg。
进阶排查:区分本地安装与全局安装
第一步:检查是否含 --user 安装的包
uv pip list --user
第二步:对比纯本地环境(排除系统级包)
uv pip list --local
第三步:若想看哪些包有更新,执行
uv pip list --outdated
⚠️ 注意:--outdated 会触发网络请求检测 PyPI 最新版本,若离线或网络受限,会卡住几秒后超时返回空结果,此时请改用 uv pip list 确认存在性即可。
导出为 requirements.txt 格式
① 输出带版本号的冻结列表(最常用):
uv pip freeze > requirements.txt
② 若需兼容旧版 pip-tools 流程,加 --all 参数确保包含隐式依赖:
uv pip freeze --all > requirements-full.txt
③ 只导出顶层依赖(即你手动 install 的那些,不含 requests 自动拉的 urllib3):
uv pip freeze --top-level > requirements-top.txt
这三步顺序不能颠倒——--top-level 依赖 --all 的解析结果,否则可能漏掉某些包。










