用uv安装python后,使用python --version可以正常输出版本信息,但是pip install 或者pip --version会提示command not found。
在使用 uv 初始化新 Python 项目时,如果发现虚拟环境中没有 pip,通常是因为 uv 默认通过自身的依赖管理机制(uv add、uv sync)来替代传统的 pip install,因此不会主动安装 pip。但某些场景(如需要运行 pip install -r requirements.txt)仍需手动启用 pip。
经过多方探索,我找到可行的解决办法。废话少说,直接上干货!
以我为Claude Code配置的python3.15虚拟环境为例(这里默认你已经安装好了uv,并且已将安装 了python3.15,只解决pip不能用的问题):
1.为 Claude Code 项目创建并切换到专用目录
mkdir -p ~/claude_projects
cd ~/claude_projects
2.初始化目录
uv init ~/claude_projects
3.指定版本号
uv python pin 3.15
4.创建虚拟环境
uv venv
5.激活环境
source ~/.venv/bin/activate
6.检查 pip 是否存在
若提示 pip: command not found,则需手动安装,注意前面有个点(.)
.venv/bin/pip --version
7.手动安装pip,在 uv 管理的虚拟环境中添加 pip
uv pip install --upgrade pip
8.退出虚拟环境
deactivate
9.重新激活环境
source ~/.venv/bin/activate
10.到此应该python和pip都可用了
查看 python --version
查看 pip --version
python --version
pip --version
#11.如果还不行,重复步骤8和9,在测试
当然你要告诉Claude Code: 永久记住,我修改了默认的python版本到3.15,以后需要使用python、pip等命令首先要启动虚拟环境(执行source ~/.venv/bin/activate)才可以使用,找不到python或pip命令向我报告,让我来处理。然后再次测试一下python和pip是否可用。
当然你要知道,必须要在上面创建的claude_projects文件夹下启动claude code才行,不然还是会报command not found。