uv python list 仅显示 uv 缓存中注册的解释器路径,不反映当前 shell 或 Python 运行时实际使用的解释器;确认当前路径应使用 which python(Linux/macOS)、where python(Windows)或 Python 内 import sys; print(sys.executable)。

uv python list 显示的是所有可选解释器,不是当前环境路径
运行 uv python list 会列出 uv 管理的所有已注册 Python 解释器(比如 /usr/bin/python3.11、~/pythons/3.12.7),但它不告诉你当前 shell 正在用哪一个。这个命令本质是查 uv 的「缓存目录」里的注册记录,和当前 PYTHONPATH 或 which python 无关。
uv python list --installed 只过滤已安装项,仍不反映激活状态
加 --installed 参数只是跳过下载检查,只显示本地磁盘上真实存在的解释器路径。它依然不会标注哪个是当前 python 命令实际调用的——因为 uv 本身不接管 shell 的命令解析逻辑。你可能看到十几行路径,但其中只有一个是 which python 返回的那个。
真正拿到当前环境 Python 路径,得绕回系统或 Python 自身
uv 没有类似 conda activate && conda info --base 的“当前环境根路径”概念,它也不维护运行时的激活上下文。所以必须用底层方式确认:
安全 Python 代码沙箱:在隔离的沙箱中执行任意 Python 代码,预装 requests、NumPy、pandas 库。返回 stdout、stderr。
- 在终端里直接运行
which python(macOS/Linux)或where python(Windows),这是最直接的 shell 层级答案 - 进 Python 后执行
import sys; print(sys.executable),它返回解释器二进制的真实路径,不受 alias 或 wrapper 干扰 - 如果用了 uv venv 创建的虚拟环境,且你记得激活路径,那
venv/bin/python(Unix)或venv\Scripts\python.exe(Windows)就是它——但 uv 不提供“从任意位置反查我当前在哪个 venv 里”的命令
容易被忽略的一点:uv python pin 不等于当前解释器
uv python pin 只读取项目根目录下的 .python-version 或 pyproject.toml 中的 [tool.uv.python] 配置,用来指导后续 uv pip install 该用哪个版本。它不改变当前 shell 的 python 命令指向,也不影响 sys.executable。别把它当成“当前环境”的权威来源。
立即学习“Python免费学习笔记(深入)”;

















