
一、为什么推荐大家改用 uv先简单对比传统工具的痛点看懂你就明白uv有多香原生venv仅能创建虚拟环境无依赖管理、无版本锁定多项目依赖极易冲突piprequirements.txt安装慢、解析依赖耗时久无法精准锁定间接依赖版本环境迁移容易翻车Poetry/Pipenv功能齐全但启动、解析、安装速度慢新手上手门槛高uv极速创建环境、秒装依赖、自动锁版本、跨平台兼容、命令极简兼顾新手友好和高效开发简单总结uv是Python目前最全能、最高效的环境依赖管理工具完全可以替代 venv pip poetry 全套工具。二、uv 一键安装Windows/Mac/Linux 全平台uv 安装超级简单无需复杂配置一行命令搞定支持Python3.7及以上所有版本。1. 安装命令# Mac / Linux 终端 curl -LsSf https://astral.sh/uv/install.sh | sh # Windows PowerShell powershell -c irm https://astral.sh/uv/install.ps1 | iex2. 验证安装成功安装完成后重启终端输入以下命令查看版本uv --version输出版本号即代表安装成功全程几十秒搞定零配置开箱即用。三、核心实操用 uv 管理虚拟环境uv 最核心的能力就是极简虚拟环境管理告别繁琐命令新手也能一键操作。1. 创建虚拟环境进入你的项目文件夹执行创建命令默认生成.venv虚拟环境目录# 使用系统默认Python版本创建环境 uv venv # 指定Python版本创建推荐多版本必备 uv venv --python 3.10执行后项目目录会自动生成.venv文件夹这就是当前项目独立隔离的Python环境不同项目环境完全互不干扰。2. 激活虚拟环境创建完成后根据系统执行激活命令激活成功后终端前缀会显示(.venv)# Mac / Linux source .venv/bin/activate # Windows PowerShell .venv\Scripts\activate3. 退出/删除虚拟环境# 退出当前虚拟环境 deactivate # 删除虚拟环境直接删除文件夹即可干净无残留 rm -rf .venv相较于原生venvuv创建环境速度提升近百倍且环境纯净无冗余文件。四、uv依赖包管理替代pip更稳更快uv 完全兼容pip生态且安装、更新、卸载速度碾压pip同时自带版本锁定功能彻底解决依赖混乱问题。1. 安装依赖包# 安装最新版本 uv add requests # 指定版本安装 uv add numpy1.26.0 # 安装开发依赖仅开发环境使用 uv add --dev pytest2. 卸载 / 更新依赖# 卸载指定包 uv remove requests # 更新指定包到最新版本 uv lock --upgrade-package numpy # 更新所有依赖 uv lock --upgrade3. 查看已安装依赖uv pip list五、项目环境固化与迁移传统requirements.txt无法锁定间接依赖版本迁移环境极易出现版本不一致。而uv会自动生成pyproject.toml依赖声明和uv.lock精准锁文件实现一键复刻环境团队协作、项目部署零翻车。1.在源机器上准备生成配置文件# 先更新锁文件 uv lock执行后自动生成项目基础配置文件规范化项目结构。2. 同步环境安装所有锁定依赖将 pyproject.toml 和 uv.lock 文件以及项目代码拷贝到新机器直接执行uv sync uv sync 的工作机制保证了环境一致性 步骤 说明 读取 uv.lock 获取每个包的精确版本和哈希值 下载安装 从 PyPI 下载这些精确版本的包到新机器的 .venv 版本锁定 确保新机器安装的依赖版本与源机器完全一致uv 会自动读取 lock 文件精准复刻完全一致的依赖环境彻底解决我本地能跑你本地报错的经典问题。六、高阶用法无需激活环境直接运行代码uv 有一个超级实用的功能无需手动激活虚拟环境直接运行项目代码简化操作流程。# 直接运行py文件自动加载当前项目虚拟环境 uv run main.py # 运行框架命令如Flask、Django uv run flask run uv run python manage.py runserver日常开发完全可以抛弃手动激活、退出环境的操作一条命令直接运行高效又便捷。七、常用命令速查表整理日常开发高频命令随用随查# 安装/升级uv curl -LsSf https://astral.sh/uv/install.sh | sh # 创建虚拟环境 uv venv uv venv --python 3.10 # 激活环境Mac/Linux source .venv/bin/activate # 安装/卸载依赖 uv add 包名 uv remove 包名 # 同步环境、锁定版本 uv sync uv lock # 直接运行代码 uv run xxx.py # 退出环境 deactivate八、写在最后从原生 venv、pip 到 poetry、pipenvPython 环境管理工具迭代了很多版本而uv 是目前综合体验最优的方案。它用极致的速度、极简的命令、完善的依赖锁定机制一站式解决了 Python 开发者环境创建慢、依赖安装卡、版本不统一、迁移易报错的所有痛点。参考链接Features | uv